The following code works well with (some) ATI cards.
glActiveTextureARB(0); int vp; glGetIntegerv( GL_VIEWPORT, vp ); // framebuffer-backup glBindTexture( GL_TEXTURE_2D, m_FramebufferTexture ); glCopyTexSubImage2D( GL_TEXTURE_2D, 0, 0,0, vp, vp, vp,vp);
m_FramebufferTexture is a texture with dimensions [2^n,2^m] ( 2^n >= screenwidth > 2^(n-1) … ) and was created with:
glTexImage2D( GL_TEXTURE_2D, 0, GL_RGBA, tex_width, tex_height, 0, GL_RGBA, GL_UNSIGNED_BYTE,0);
then I use this texture to draw a quad on the entire screen.
I couldn’t make this code run with my NVIDIA ( NV35 ). The screen just shows the previosly bound texture.
- windows with qt
- 32bpp desktop
- glwindow with 8 bit alpha
I have no idea what I should try now.