r300: fix point size clamping when point is not attenuated
authorMaciej Cencora <m.cencora@gmail.com>
Sat, 25 Apr 2009 11:48:53 +0000 (13:48 +0200)
committerAlex Deucher <alexdeucher@gmail.com>
Mon, 27 Apr 2009 18:33:23 +0000 (14:33 -0400)
src/mesa/drivers/dri/r300/r300_state.c

index 9c8b8adbe3b0042e78ffec2dd30c3cfc3ecaa697..99441a22fd625c85b090711df719ce5790334d06 100644 (file)
@@ -728,7 +728,12 @@ static void r300ColorMask(GLcontext * ctx,
 static void r300PointSize(GLcontext * ctx, GLfloat size)
 {
        r300ContextPtr r300 = R300_CONTEXT(ctx);
-        /* same size limits for AA, non-AA points */
+
+       /* We need to clamp to user defined range here, because
+        * the HW clamping happens only for per vertex point size. */
+       size = CLAMP(size, ctx->Point.MinSize, ctx->Point.MaxSize);
+
+       /* same size limits for AA, non-AA points */
        size = CLAMP(size, ctx->Const.MinPointSize, ctx->Const.MaxPointSize);
 
        R300_STATECHANGE(r300, ps);