3 static void FUNC( ARGS
,
10 for (i
= 0; i
< count
; i
++) {
16 for (i
= 0; i
+1 < count
; i
+= 2) {
17 LINE( DRAW_PIPE_RESET_STIPPLE
,
23 case PIPE_PRIM_LINE_LOOP
:
25 flags
= DRAW_PIPE_RESET_STIPPLE
;
27 for (i
= 1; i
< count
; i
++, flags
= 0) {
39 case PIPE_PRIM_LINE_STRIP
:
40 flags
= DRAW_PIPE_RESET_STIPPLE
;
41 for (i
= 1; i
< count
; i
++, flags
= 0) {
48 case PIPE_PRIM_TRIANGLES
:
49 for (i
= 0; i
+2 < count
; i
+= 3) {
51 /* put provoking vertex in last pos for clipper */
52 TRIANGLE( DRAW_PIPE_RESET_STIPPLE
| DRAW_PIPE_EDGE_FLAG_ALL
,
58 TRIANGLE( DRAW_PIPE_RESET_STIPPLE
| DRAW_PIPE_EDGE_FLAG_ALL
,
66 case PIPE_PRIM_TRIANGLE_STRIP
:
68 for (i
= 0; i
+2 < count
; i
++) {
69 TRIANGLE( DRAW_PIPE_RESET_STIPPLE
| DRAW_PIPE_EDGE_FLAG_ALL
,
76 for (i
= 0; i
+2 < count
; i
++) {
77 TRIANGLE( DRAW_PIPE_RESET_STIPPLE
| DRAW_PIPE_EDGE_FLAG_ALL
,
85 case PIPE_PRIM_TRIANGLE_FAN
:
88 for (i
= 0; i
+2 < count
; i
++) {
89 TRIANGLE( DRAW_PIPE_RESET_STIPPLE
| DRAW_PIPE_EDGE_FLAG_ALL
,
96 for (i
= 0; i
+2 < count
; i
++) {
97 TRIANGLE( DRAW_PIPE_RESET_STIPPLE
| DRAW_PIPE_EDGE_FLAG_ALL
,
107 case PIPE_PRIM_QUADS
:
109 for (i
= 0; i
+3 < count
; i
+= 4) {
117 for (i
= 0; i
+3 < count
; i
+= 4) {
126 case PIPE_PRIM_QUAD_STRIP
:
128 for (i
= 0; i
+3 < count
; i
+= 2) {
136 for (i
= 0; i
+3 < count
; i
+= 2) {
145 case PIPE_PRIM_POLYGON
:
147 /* These bitflags look a little odd because we submit the
148 * vertices as (1,2,0) to satisfy flatshade requirements.
150 const ushort edge_first
= DRAW_PIPE_EDGE_FLAG_2
;
151 const ushort edge_middle
= DRAW_PIPE_EDGE_FLAG_0
;
152 const ushort edge_last
= DRAW_PIPE_EDGE_FLAG_1
;
154 flags
= DRAW_PIPE_RESET_STIPPLE
| edge_first
| edge_middle
;
156 for (i
= 0; i
+2 < count
; i
++, flags
= edge_middle
) {