summaryrefslogtreecommitdiffstats
path: root/src/mesa/drivers
diff options
context:
space:
mode:
authorBrian Paul <[email protected]>2009-12-21 18:23:53 -0700
committerBrian Paul <[email protected]>2009-12-21 18:23:53 -0700
commitb57abd3bea29e95e5dee2524c3f1be4b26017c0f (patch)
tree8da85ef6e5ef40a4a7bd328fc574a27c2b8c0849 /src/mesa/drivers
parentbf064ce0c31abb036fc035c59fdc1134705a5e3f (diff)
parente46ad402f1fecf0fc8d2538eb5abbdde97484799 (diff)
Merge branch 'mesa_7_6_branch' into mesa_7_7_branch
Conflicts: configure.ac progs/demos/morph3d.c progs/demos/textures.c progs/glsl/shtest.c progs/glsl/texaaline.c progs/tests/packedpixels.c progs/xdemos/corender.c src/mesa/main/version.h
Diffstat (limited to 'src/mesa/drivers')
-rw-r--r--src/mesa/drivers/dri/r600/r700_state.c13
1 files changed, 6 insertions, 7 deletions
diff --git a/src/mesa/drivers/dri/r600/r700_state.c b/src/mesa/drivers/dri/r600/r700_state.c
index d7420678ff0..16b05d5cd9a 100644
--- a/src/mesa/drivers/dri/r600/r700_state.c
+++ b/src/mesa/drivers/dri/r600/r700_state.c
@@ -705,6 +705,10 @@ static void r700UpdateCulling(GLcontext * ctx)
CLEARbit(r700->PA_SU_SC_MODE_CNTL.u32All, FACE_bit); /* default: ccw */
break;
}
+
+ /* Winding is inverted when rendering to FBO */
+ if (ctx->DrawBuffer && ctx->DrawBuffer->Name)
+ r700->PA_SU_SC_MODE_CNTL.u32All ^= FACE_bit;
}
static void r700UpdateLineStipple(GLcontext * ctx)
@@ -1227,13 +1231,8 @@ static void r700UpdatePolygonMode(GLcontext * ctx)
/* Handle GL_CW (clock wise and GL_CCW (counter clock wise)
* correctly by selecting the correct front and back face
*/
- if (ctx->Polygon.FrontFace == GL_CCW) {
- f = ctx->Polygon.FrontMode;
- b = ctx->Polygon.BackMode;
- } else {
- f = ctx->Polygon.BackMode;
- b = ctx->Polygon.FrontMode;
- }
+ f = ctx->Polygon.FrontMode;
+ b = ctx->Polygon.BackMode;
/* Enable polygon mode */
SETfield(r700->PA_SU_SC_MODE_CNTL.u32All, X_DUAL_MODE, POLY_MODE_shift, POLY_MODE_mask);