RenderToTexture problem on WinXP


I have recently downloaded the Opengl es 1.1 SDK  (OGLES-1.1_WINDOWS_PCEMULATION_2.02.22.0756) and I have a problem that you might be able to help me with. The problem occurs in the training course "09_RenderToTexture". On my old laptop (Dell D800 with NVIDIA GeForce4) it works fine but with my new laptop (Dell 630 with Mobile Intel(R) 965 Express Chipset Family) it doesn't. I'm using Windows XP.

In the function OGLESRenderToTexture::InitView() the calls to eglCreatePbufferSurface returns 0x00000000 which makes the program to end.

Investigation note:
The previous call to eglChooseConfig function returns true and I get a configuration (0). If I add calls to eglGetError() it returns EGL_SUCCESS before I call eglCreatePbufferSurface and EGL_BAD_MATCH after. I have tried to use different configuration and pbuffer attributes but with no success. I have also downloaded the latest drivers from Intel (

What is going on?

Hello Erik,

Have you checked the Reference Manual?


"EGL_BAD_MATCH is generated if config does not support rendering to pixel buffers (the EGL_SURFACE_TYPE attribute does not contain EGL_PBUFFER_BIT)."


It sounds as though your new GPU doesn't support all the extensions that your previous GPU did. You will need a pbuffer extension, you can check this with a GPU caps view tool.


Hope this helps,


Hi Andrew,

Thanks for your quick response. Yes, I have checked the ref manual but I can still not understand why the tutorial isn't working. In the SelectEGLConfig() function a configuration is choosen with the EGL_SURFACE_TYPE attribute that does contain EGL_PBUFFER_BIT. The eglChooseConfig function is successfully executed and no error reported.


I downloaded a GPU caps view tool and it reports that there is an extension called WGL_ARB_pbuffer available and supported. I'm new to these things so I'm not sure if that is the correct extension to look for.


It seems like there is a bug in the eglCreatePbuffer functionality? I get a config that should support pbuffer but I can still not create one :/



I just noticed that there is a printout in the output window right after the call to eglCreatePbufferSurface(…)


*ERROR* Failed to find a suitable Pixel Format for PBuffer !


It sounds as though render to texture may not be supported by your GPU, especially as the same demo worked with your old laptop.


Is there a way you can try the demo on a different machine?