My problem is this: I have a scene I wish to draw in OpenGL. Parts of the scene take a long time to draw, so for performance reasons I don’t want to have to draw them more than once. My solution was to render the “slow” parts of the scene on the back buffer, copy the back buffer to the accumulation buffer, then draw the simple parts of the scene before flipping buffers. Then when I want to redraw, I can simply copy the accumulation buffer to the back buffer and re-render the simple parts of the scene.
This seems to work exactly as I want it to on Win2K. However, on the SGI O2 I’m also using, it only works right if no windows obscure the window I’m drawing to as I’m drawing. If there is another window sitting “on top of” my window while OpenGL is rendering, drawing (even to the back buffer) is clipped around that window. Thus, my copy of the scene on the accumulation buffer has a hole in it where the other window was. This is a problem when the other window is moved or my window comes to the top.
I’ve tried disabling GL_SCISSOR_TEST, but that didn’t help. Is there any way to turn this “feature” off? Is it specific to SGI, or is it an X thing?