diff options
author | Brian <brian.paul@tungstengraphics.com> | 2007-08-30 14:31:42 -0600 |
---|---|---|
committer | Brian <brian.paul@tungstengraphics.com> | 2007-08-30 14:43:08 -0600 |
commit | aaf03b94861cbf5a602863e4542dd1c2e54ba365 (patch) | |
tree | 853b15984f8ebfb0f60ed1aa83ce7f3a5eedd384 /src/mesa/pipe/draw/draw_unfilled.c | |
parent | 2d187672b7e38fcd8f6caa93f35dceb6fa11aa7f (diff) |
Fix lost edge flags problem when clipping.
In emit_poly() we need to compute header.edgeflags from the vertex
edge flags. Also need to set header.det so later stages can determine
front/back orientation.
Diffstat (limited to 'src/mesa/pipe/draw/draw_unfilled.c')
-rw-r--r-- | src/mesa/pipe/draw/draw_unfilled.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/src/mesa/pipe/draw/draw_unfilled.c b/src/mesa/pipe/draw/draw_unfilled.c index 4215b8b228..b0d6f3d065 100644 --- a/src/mesa/pipe/draw/draw_unfilled.c +++ b/src/mesa/pipe/draw/draw_unfilled.c @@ -104,6 +104,12 @@ static void lines( struct draw_stage *stage, struct vertex_header *v1 = header->v[1]; struct vertex_header *v2 = header->v[2]; +#if 0 + assert(((header->edgeflags & 0x1) >> 0) == header->v[0]->edgeflag); + assert(((header->edgeflags & 0x2) >> 1) == header->v[1]->edgeflag); + assert(((header->edgeflags & 0x4) >> 2) == header->v[2]->edgeflag); +#endif + if (header->edgeflags & 0x1) line( stage, v0, v1 ); if (header->edgeflags & 0x2) line( stage, v1, v2 ); if (header->edgeflags & 0x4) line( stage, v2, v0 ); |