View Full Version : more z-Buffer control

08-02-2001, 12:26 AM
something like writing a specified value to z-buffer if test passes, instead of depthvalue ...

08-02-2001, 01:13 AM
Can't this be done with the help of the stencil buffer?

08-03-2001, 01:17 PM
The short answer: No.

I wanted this feature for doing a trick for shadowing actually.


08-05-2001, 12:39 PM
Actually it can be done with the help of a stencil buffer in two passes, as long as the depthvalue is a constant.

First pass:
Clear stencil buffer
Depth testing enabled
Set stencil to write 1 for all pixels that pass depth testing
Draw object

Second pass:
Mask color buffer
Set depth range (near and far) to value to write
Set depth function to GL_ALWAYS
Enable stencil testing, set test to pass on stencil values of 1, otherwise fail
Draw object

The result is that for pixels that have a stencil value of 1 from the first pass, in the second pass will be assigned the desired zdepth.

08-05-2001, 05:09 PM
The problem is the object to render. It must be billboarded and be at the proper depth. Maybe a few other things like depth range need to be changed too but that's not an issue.

Just a small problem...