summaryrefslogtreecommitdiffstats
path: root/src/mesa/pipe/draw/draw_clip.c
diff options
context:
space:
mode:
authorBrian <[email protected]>2007-07-25 15:48:09 -0600
committerBrian <[email protected]>2007-07-25 15:48:09 -0600
commit0360b49afbcd839f99ba0745d01cf9dc5be4d122 (patch)
treef2746f209352f65cec01360ef88c2a018eb8b68b /src/mesa/pipe/draw/draw_clip.c
parent1f6b4b0f75d7cd7306e6aa24c27fd478f6b6c52d (diff)
Implement line stippling.
Also added draw_stage::reset_line_stipple(). There may be a better way of doing that though.
Diffstat (limited to 'src/mesa/pipe/draw/draw_clip.c')
-rw-r--r--src/mesa/pipe/draw/draw_clip.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/mesa/pipe/draw/draw_clip.c b/src/mesa/pipe/draw/draw_clip.c
index b220cc3643f..f8bacf8a818 100644
--- a/src/mesa/pipe/draw/draw_clip.c
+++ b/src/mesa/pipe/draw/draw_clip.c
@@ -433,6 +433,12 @@ static void clip_end( struct draw_stage *stage )
}
+static void clip_reset_stipple_counter( struct draw_stage *stage )
+{
+ stage->next->reset_stipple_counter( stage->next );
+}
+
+
/**
* Allocate a new clipper stage.
* \return pointer to new stage object
@@ -449,6 +455,7 @@ struct draw_stage *draw_clip_stage( struct draw_context *draw )
clipper->stage.line = clip_line;
clipper->stage.tri = clip_tri;
clipper->stage.end = clip_end;
+ clipper->stage.reset_stipple_counter = clip_reset_stipple_counter;
clipper->plane = draw->plane;