i used a hidden window for rendering and reading of color & depth buffers - glReadPixels. This has worked fine by the 256 colors mode (NVIDIA GeForce4 MX440).
problem is with the 16, 32-bit colors modes. the hidden window is not affected by drawing to it anymore. is there a way how to force opengl to draw to hidden windows?
i created a pbuffer, but i did not succeed with that - look at the topic “PBuffer - depth component”.
would anybody help me?
The contents of hidden windows is undefined. If it happened to work with the display in 8 bit mode, then that’s just a lucky accident.
You need to use a pbuffer, as it seems you’re correctly assuming.
I’ll have a guess and say that when you used 8bit mode you were running under the default MS implementation, rather than the nVidia one.
what do you mean - default MS implementation?
software vs hardware opengl commands execution? would you be more specific?
In windows you always have a software implementation from MS ( opengl 1.1) that are used when no acceleration drivers is found, and also when you try to get a mode that arent accelerated by the driver, in this case the 8bit mode. That driver might store even unseen pixels, but thats not a requirement from opengl, infact opengl specifies that non visible pixels are undefined. Most graphiccards listens to that and dont follow the whole renderpath for obscured pixels.