glReadPixels and glWritePixels

So I have a very complicated background that takes ages to render. So what I do is I render it once, and then use glReadPixels on color and depth buffer to store them in system memory. Then I can put this image on the screen with glWritePixels. It works fine as long as the window is not big. So I’m wondering if there is a way to store the buffers in to the geforce memory instead of system memory. I guess that would speed things up right?

so in summary, I need some kind of malloc that works inside the graphics card memory and then use that pointer to store the buffers. Is it possible?
thanks in advance.

so actualy… i just found out that I can use glCopyPixels to copy the buffers into the auxiliary buffer. does anyone see a problem with that?

hm. it seems geforce2 doesn’t have an auxiliary buffer? that’s sad.

[This message has been edited by abaybas (edited 06-19-2003).]

You want glCopyTexSubImage2D(), then re-supply your complex background by rendering a fullscreen textured quad.

Why not just use the buffer region extension. This is what it’s made for.
http://oss.sgi.com/projects/ogl-sample/registry/ARB/wgl_buffer_region.txt

It’s windows only, but probably there is a GLX version too.