i965: Fix provoking vertex select in clip state for sandybridge
authorZhenyu Wang <zhenyuw@linux.intel.com>
Tue, 4 Jan 2011 05:46:13 +0000 (13:46 +0800)
committerZhenyu Wang <zhenyuw@linux.intel.com>
Tue, 4 Jan 2011 05:51:39 +0000 (13:51 +0800)
Triangle fan provoking vertex for first convention should be
'vertex 1' in sandybridge clip state.

Partly fix glean/clipFlat case

src/mesa/drivers/dri/i965/gen6_clip_state.c

index c7c4eb1f27d6272323f683f012a5b941865e54f1..e25d1bf78796bf78e62c7804e73973785c13bec9 100644 (file)
@@ -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) |