sdlGlExtensionSupported function
Check if an OpenGL extension is supported for the current context.
This function operates on the current GL context; you must have created a context and it must be current before calling this function. Do not assume that all contexts you create will have the same set of extensions available, or that recreating an existing context will offer the same extensions again.
While it's probably not a massive overhead, this function is not an O(1) operation. Check the extensions you care about after creating the GL context and save that information somewhere instead of calling the function every time you need to know.
\param extension the name of the extension to check. \returns true if the extension is supported, false otherwise.
\threadsafety This function should only be called on the main thread.
\since This function is available since SDL 3.1.3.
extern SDL_DECLSPEC bool SDLCALL SDL_GL_ExtensionSupported(const char *extension)
Implementation
bool sdlGlExtensionSupported(String? extension) {
final sdlGlExtensionSupportedLookupFunction = libSdl3.lookupFunction<
Uint8 Function(Pointer<Utf8> extension),
int Function(Pointer<Utf8> extension)>('SDL_GL_ExtensionSupported');
final extensionPointer =
extension != null ? extension.toNativeUtf8() : nullptr;
final result = sdlGlExtensionSupportedLookupFunction(extensionPointer) == 1;
calloc.free(extensionPointer);
return result;
}