This probably seems like a silly question, but does glGetString(GL_EXTENSIONS) display every supported OpenGL extension supported by the video card?
I’ve run this program on my laptop and it does NOT show any of the following extensions:
WGL_ARB_pbuffer
WGL_ARB_pixel_format
GL_EXT_framebuffer_object
Does that mean the ONLY way I can render-to-texture is by using gltexSubImage2d and glReadPixels?
Thanks,
John
Probably, yes.
Unless you have checked something like “limit OpenGL extension string” in Nvidia Control Panel…
Have a look here, to check whether your card really don’t have any of these extensions :
http://www.delphi3d.net/hardware/index.php
zed
3
WGL_ … extensions arent in thew extension string (theyre windows specific theres also linux/apple extensions as well)
glReadPixels doesnt update a texture
gltex(Sub)Image2d
glCopytex(Sub)Image2d
are what u want
GL_EXT_framebuffer_object also can do it,
but your card mightnt support it
look here
http://www.delphi3d.net/hardware/extsupport.php?extension=GL_EXT_framebuffer_object
(this is prolly not a complete list)
if its not here + youve got the latest drivers post what gpu u have + someone could tell u if it supports FBO
mfort
4
For complete list of extensions you must call
glGetString(GL_EXTENSIONS)
and then
wglGetExtensionsStringARB(wglGetCurrentDC())
The second call is extension function itself
which must be obtained before invocation.
PFNWGLGETEXTENSIONSSTRINGARBPROC wglGetExtensionsStringARB = (PFNWGLGETEXTENSIONSSTRINGARBPROC) wglGetProcAddress("wglGetExtensionsStringARB");