summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorZhenyu Wang <zhenyuw@linux.intel.com>2011-01-04 13:46:13 +0800
committerZhenyu Wang <zhenyuw@linux.intel.com>2011-01-04 13:51:39 +0800
commit9977297ad9bc0e816810bd3a39d89e5c1cffff72 (patch)
treed089ae7c199f8ae106bf7af22615f0fe089d8487 /src
parent7bd2c5d1f98d0cfcf896a58c3d66713165f6bedd (diff)
i965: Fix provoking vertex select in clip state for sandybridge
Triangle fan provoking vertex for first convention should be 'vertex 1' in sandybridge clip state. Partly fix glean/clipFlat case
Diffstat (limited to 'src')
-rw-r--r--src/mesa/drivers/dri/i965/gen6_clip_state.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/mesa/drivers/dri/i965/gen6_clip_state.c b/src/mesa/drivers/dri/i965/gen6_clip_state.c
index c7c4eb1f27..e25d1bf787 100644
--- a/src/mesa/drivers/dri/i965/gen6_clip_state.c
+++ b/src/mesa/drivers/dri/i965/gen6_clip_state.c
@@ -43,7 +43,10 @@ upload_clip_state(struct brw_context *brw)
depth_clamp = GEN6_CLIP_Z_TEST;
if (ctx->Light.ProvokingVertex == GL_FIRST_VERTEX_CONVENTION) {
- provoking = 0;
+ provoking =
+ (0 << GEN6_CLIP_TRI_PROVOKE_SHIFT) |
+ (1 << GEN6_CLIP_TRIFAN_PROVOKE_SHIFT) |
+ (0 << GEN6_CLIP_LINE_PROVOKE_SHIFT);
} else {
provoking =
(2 << GEN6_CLIP_TRI_PROVOKE_SHIFT) |