Mesa (master): r600g: try to fix line stippling with lineloops

Marek Olšák mareko at kemper.freedesktop.org
Wed Jul 18 00:20:35 UTC 2012


Module: Mesa
Branch: master
Commit: 5130196c0b3cbdb1944918d7f8d4db24d026deea
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=5130196c0b3cbdb1944918d7f8d4db24d026deea

Author: Marek Olšák <maraeo at gmail.com>
Date:   Wed Jul 18 02:17:10 2012 +0200

r600g: try to fix line stippling with lineloops

The piglit test is failing, but visually it looks almost correct.

---

 src/gallium/drivers/r600/r600_state_common.c |    3 ++-
 1 files changed, 2 insertions(+), 1 deletions(-)

diff --git a/src/gallium/drivers/r600/r600_state_common.c b/src/gallium/drivers/r600/r600_state_common.c
index 1a29731..e819d2f 100644
--- a/src/gallium/drivers/r600/r600_state_common.c
+++ b/src/gallium/drivers/r600/r600_state_common.c
@@ -1057,7 +1057,8 @@ void r600_draw_vbo(struct pipe_context *ctx, const struct pipe_draw_info *dinfo)
 
 	if (prim == V_008958_DI_PT_LINELIST)
 		ls_mask = 1;
-	else if (prim == V_008958_DI_PT_LINESTRIP) 
+	else if (prim == V_008958_DI_PT_LINESTRIP ||
+		 prim == V_008958_DI_PT_LINELOOP)
 		ls_mask = 2;
 	r600_pipe_state_mod_reg(&rctx->vgt, S_028A0C_AUTO_RESET_CNTL(ls_mask) | rctx->pa_sc_line_stipple);
 	r600_pipe_state_mod_reg(&rctx->vgt,




More information about the mesa-commit mailing list