summaryrefslogtreecommitdiff
path: root/src/gallium/drivers/softpipe/sp_quad_stipple.c
diff options
context:
space:
mode:
authorBrian Paul <brianp@vmware.com>2009-03-20 20:25:34 -0600
committerBrian Paul <brianp@vmware.com>2009-03-20 20:29:07 -0600
commit401cbd0d2365e5b2d371a2a01edf1cecca4a99dd (patch)
tree1db298c9d76bd4bad0831cdabf12b635e2941903 /src/gallium/drivers/softpipe/sp_quad_stipple.c
parent1f45ae0813f72fa92f52e0ebc440922362dc7cce (diff)
gallium: remove use of origin_lower_left
This was used to indicate OpenGL's lower-left origin for fragment window coordinates for polygon stipple and gl_FragCoord. Now: - fragment coordinate origin is always upper-left corner - GL polygon stipple is inverted and shifted before given to gallium - GL fragment programs that use INPUT[WPOS] are modified to use an inverted window coord which is placed in a temp register. Note: the origin_lower_left field still exists in pipe_rasterizer_state. Remove it when all the drivers, etc. no longer reference it.
Diffstat (limited to 'src/gallium/drivers/softpipe/sp_quad_stipple.c')
-rw-r--r--src/gallium/drivers/softpipe/sp_quad_stipple.c18
1 files changed, 4 insertions, 14 deletions
diff --git a/src/gallium/drivers/softpipe/sp_quad_stipple.c b/src/gallium/drivers/softpipe/sp_quad_stipple.c
index 05e862f097..07162db7b6 100644
--- a/src/gallium/drivers/softpipe/sp_quad_stipple.c
+++ b/src/gallium/drivers/softpipe/sp_quad_stipple.c
@@ -22,21 +22,11 @@ stipple_quad(struct quad_stage *qs, struct quad_header *quad)
if (quad->input.prim == QUAD_PRIM_TRI) {
struct softpipe_context *softpipe = qs->softpipe;
/* need to invert Y to index into OpenGL's stipple pattern */
- int y0, y1;
- uint stipple0, stipple1;
const int col0 = quad->input.x0 % 32;
-
- if (softpipe->rasterizer->origin_lower_left) {
- y0 = softpipe->framebuffer.height - 1 - quad->input.y0;
- y1 = y0 - 1;
- }
- else {
- y0 = quad->input.y0;
- y1 = y0 + 1;
- }
-
- stipple0 = softpipe->poly_stipple.stipple[y0 % 32];
- stipple1 = softpipe->poly_stipple.stipple[y1 % 32];
+ const int y0 = quad->input.y0;
+ const int y1 = y0 + 1;
+ const uint stipple0 = softpipe->poly_stipple.stipple[y0 % 32];
+ const uint stipple1 = softpipe->poly_stipple.stipple[y1 % 32];
/* turn off quad mask bits that fail the stipple test */
if ((stipple0 & (bit31 >> col0)) == 0)