Each Visible object would have a texture where it fits (if the object takes 1 pixel on screen the texture is 1 pixel too). The texture contains both the color and depth values.
Each object is rendered to their texture at some point, every X frame, every frame, whatever, both the color and depth.
After you have all these textures, you can render the textures to the screen with depth testing the depth values of the texture, without actually rendering the objects themselves to their respective textures unless they change rotation or distance significantly. The textures would also be positioned right, rotated and possibly even up/downsampled to have the quality stay good even if the object does rotate or move in a bad direction a bit.
Obviously this takes a lot of memory for objects covering the whole screen, so it should only be used if you actually save a lot of performance by using it, lets say a single relatively big complex object or multiple complex smaller ones which dont need to be rendered every frame (That is, if they dont rotate or move much in the z direction)
Actually i was originally thinking this for some sort of software real time raycaster/tracer, since with those this would be great to hide the effects of slow
Comments?



















