I use WGL_ARB_buffer_region to save and restor the Z-Buffer, but on GF3 there are strange Effects.
I use the following code:
buffer = wglCreateBufferRegionARB(wglGetCurrentDC(), 0, WGL_DEPTH_BUFFER_BIT_ARB)
wglSaveBufferRegionARB(buffer, 0, 0, width, height)
wglRestoreBufferRegionARB(buffer, 0, 0, width, height, 0, 0);
No matter what I use for width or viewportsize it always restore maximal the half of the viewport in x direction.
Example: I use Viewport 800x600 all width under 400 works correct on this viewport.
If i set a width greater than 400 it restore only 400 pixel from left. But I want restore the whole screen.
In height it works fine and on GF2 it works fine with height and width. So it seems to me it is a GF3 problem.?
On other Problem is that WGL_ARB_buffer_region do not work with pBuffer. If I create a WGL_ARB_buffer_region in the pBuffer the driver crash.
This is in GF2 and GF3.
I have Win2k, gf3 and Driver 23.11