summaryrefslogtreecommitdiff
path: root/src/mesa/pipe/softpipe/sp_quad.h
diff options
context:
space:
mode:
authorMichal Krol <michal@tungstengraphics.com>2007-11-18 18:20:20 +0000
committerMichal Krol <michal@tungstengraphics.com>2007-11-18 18:20:20 +0000
commit7f718f047676e88b660618784f256a96f7e8ed58 (patch)
tree0e7c6676b64df5394eb0d09073a934cc4bbaa408 /src/mesa/pipe/softpipe/sp_quad.h
parentca7f68a7cf25a51f382bba8c42d8c6ab7db57b5d (diff)
Implement early depth test.
Early depth test is enabled when depth test is enabled and alpha test is disabled and fragment shader does not write depth. The early-z is implemented by moving the depth test stage just before the fragment shader stage and prepending it with an earlyz stage, introduced with this commit. The earlyz stage prepares the quad->outputs.depth for the following depth test stage by interpolating Z position, just as the fragment shader would do.
Diffstat (limited to 'src/mesa/pipe/softpipe/sp_quad.h')
-rw-r--r--src/mesa/pipe/softpipe/sp_quad.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/src/mesa/pipe/softpipe/sp_quad.h b/src/mesa/pipe/softpipe/sp_quad.h
index 534541122b..f1e0281764 100644
--- a/src/mesa/pipe/softpipe/sp_quad.h
+++ b/src/mesa/pipe/softpipe/sp_quad.h
@@ -51,6 +51,7 @@ struct quad_stage {
struct quad_stage *sp_quad_polygon_stipple_stage( struct softpipe_context *softpipe );
+struct quad_stage *sp_quad_earlyz_stage( struct softpipe_context *softpipe );
struct quad_stage *sp_quad_shade_stage( struct softpipe_context *softpipe );
struct quad_stage *sp_quad_alpha_test_stage( struct softpipe_context *softpipe );
struct quad_stage *sp_quad_stencil_test_stage( struct softpipe_context *softpipe );