I am trying to use OES_framebuffer_object extension on a Texas Instruments OMAP3 processor with an SGX 530 core. Querying the extensions shows that this extension is available. I can’t find a header file in the GL ES package for it.
1) Is the extension actually available?
2) What header file should I use?
I tried using glext.h available from some other places but get an undefined symbol at runtime for glGenFramebuffersOES. I grepped for this string in libGLES_CM.so and it is there but I guess that does not necessarily mean it is available.
Thanks.
David.
If the extension is listed in the extension string, it is available on the platform. You can take the glext.h header file from our SDK or directly from the Khronos registry.
However you should not define GL_GLEXT_PROTOTYPES before including glext.h. Instead, declare your own function pointers and get the extension function addresses at runtime using eglGetProcAddress.
Here’s an example for glIsRenderbufferOES, you need to do the same for all extension functions you want to use:
Code:
// declare a function pointer for each extension entry point
PFNGLISRENDERBUFFEROESPROC glIsRenderbufferOES = NULL;
// get the function pointer during initialisation
glIsRenderbufferOES = (PFNGLISRENDERBUFFEROESPROC)eglGetProcAddress("glIsRenderbufferOES");
PFNGLISRENDERBUFFEROESPROC glIsRenderbufferOES = NULL;
// get the function pointer during initialisation
glIsRenderbufferOES = (PFNGLISRENDERBUFFEROESPROC)eglGetProcAddress("glIsRenderbufferOES");
Ahhhhh ok. Thank you very much. I’ll give this a try later today.
David.