summaryrefslogtreecommitdiff
path: root/src/mesa/pipe/softpipe/sp_quad_earlyz.c
AgeCommit message (Collapse)Author
2007-12-14Don't always declare frag shader INPUT[0] as fragment position.Brian
We were doing this for the sake of softpipe and the tgsi intergrepter since we always need the fragment position and W-coordinate information in order to compute fragment interpolants. But that's not appropriate for hardware drivers. The tgsi interpreter now get x,y,w information from a separate tgsi_exec_vector variable setup by softpipe. The new pipe_shader_state->input_map[] defines how vert shader outputs map to frag shader inputs. It may go away though, since one can also examine the semantic label on frag shader input[0] to figure things out.
2007-12-10gallium: remove unnecessary guards on qs->nextKeith Whitwell
2007-11-19optimize earlyz_quad(), add comments, remove unneeded #includesBrian
2007-11-18Implement early depth test.Michal Krol
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.