eglBindTexImage with two contexts

I am using a pbuffer in OpenGL ES 1.1 to render to texture. I followed the information in this post here

Like the poster in that thread I have two contexts, one for the main window and one for the pbuffer. I render to the pbuffer surface and then the window surface draws a quad using the pbuffer as a texture.

What I’ve found is that to get eglBindTexImage to actually contain the pbuffer contents I had to do

// Need to set the surface to the pbuffer, but the context to the window context that
// is going to use texture
eglMakeCurrent(display, pbufferSurface, pbufferSurface, windowContext);

glBindTexture(GL_TEXTURE_2D, pbufferTexture);
eglBindTexImage(g_display, pbufferSurface, EGL_BACK_BUFFER))

// Set the surface and context to the window ready for the actual draw
eglMakeCurrent(display, windowSurface, windowSurface, windowContext);

Can someone explain to me why the the first eglMakeCurrent has to be pbufferSurface but windowContext? I would have expected windowSurface,windowContext to be the correct setting, but that creates a texture with the current contents of the windowSurface (which I find really strange).



This topic was automatically closed 183 days after the last reply. New replies are no longer allowed.