Redefine QUAD_TOP_LEFT, TOP_RIGHT, etc. to reflect Y=0=TOP raster layout.

This commit is contained in:
Brian
2007-10-16 17:36:37 -06:00
parent 63b0b5b6c7
commit 0edd490a96
2 changed files with 16 additions and 15 deletions

View File

@@ -39,17 +39,18 @@
/* The rasterizer generates 2x2 quads of fragment and feeds them to /* The rasterizer generates 2x2 quads of fragment and feeds them to
* the current fp_machine (see below). * the current fp_machine (see below).
* Remember that Y=0=top with Y increasing down the window.
*/ */
#define QUAD_BOTTOM_LEFT 0 #define QUAD_TOP_LEFT 0
#define QUAD_BOTTOM_RIGHT 1 #define QUAD_TOP_RIGHT 1
#define QUAD_TOP_LEFT 2 #define QUAD_BOTTOM_LEFT 2
#define QUAD_TOP_RIGHT 3 #define QUAD_BOTTOM_RIGHT 3
#define MASK_BOTTOM_LEFT 0x1 #define MASK_TOP_LEFT (1 << QUAD_TOP_LEFT)
#define MASK_BOTTOM_RIGHT 0x2 #define MASK_TOP_RIGHT (1 << QUAD_TOP_RIGHT)
#define MASK_TOP_LEFT 0x4 #define MASK_BOTTOM_LEFT (1 << QUAD_BOTTOM_LEFT)
#define MASK_TOP_RIGHT 0x8 #define MASK_BOTTOM_RIGHT (1 << QUAD_BOTTOM_RIGHT)
#define MASK_ALL 0xf #define MASK_ALL 0xf

View File

@@ -125,11 +125,11 @@ quad_clip(struct setup_stage *setup)
if (setup->quad.x0 < minx) if (setup->quad.x0 < minx)
setup->quad.mask &= (MASK_BOTTOM_RIGHT | MASK_TOP_RIGHT); setup->quad.mask &= (MASK_BOTTOM_RIGHT | MASK_TOP_RIGHT);
if (setup->quad.y0 < miny) if (setup->quad.y0 < miny)
setup->quad.mask &= (MASK_TOP_LEFT | MASK_TOP_RIGHT); setup->quad.mask &= (MASK_BOTTOM_LEFT | MASK_BOTTOM_RIGHT);
if (setup->quad.x0 == maxx - 1) if (setup->quad.x0 == maxx - 1)
setup->quad.mask &= (MASK_BOTTOM_LEFT | MASK_TOP_LEFT); setup->quad.mask &= (MASK_BOTTOM_LEFT | MASK_TOP_LEFT);
if (setup->quad.y0 == maxy - 1) if (setup->quad.y0 == maxy - 1)
setup->quad.mask &= (MASK_BOTTOM_LEFT | MASK_BOTTOM_RIGHT); setup->quad.mask &= (MASK_TOP_LEFT | MASK_TOP_RIGHT);
} }
@@ -184,16 +184,16 @@ static unsigned calculate_mask( struct setup_stage *setup,
unsigned mask = 0; unsigned mask = 0;
if (x >= setup->span.left[0] && x < setup->span.right[0]) if (x >= setup->span.left[0] && x < setup->span.right[0])
mask |= MASK_BOTTOM_LEFT; mask |= MASK_TOP_LEFT;
if (x >= setup->span.left[1] && x < setup->span.right[1]) if (x >= setup->span.left[1] && x < setup->span.right[1])
mask |= MASK_TOP_LEFT; mask |= MASK_BOTTOM_LEFT;
if (x+1 >= setup->span.left[0] && x+1 < setup->span.right[0]) if (x+1 >= setup->span.left[0] && x+1 < setup->span.right[0])
mask |= MASK_BOTTOM_RIGHT; mask |= MASK_TOP_RIGHT;
if (x+1 >= setup->span.left[1] && x+1 < setup->span.right[1]) if (x+1 >= setup->span.left[1] && x+1 < setup->span.right[1])
mask |= MASK_TOP_RIGHT; mask |= MASK_BOTTOM_RIGHT;
return mask; return mask;
} }