summaryrefslogtreecommitdiff
path: root/src/gallium/drivers
diff options
context:
space:
mode:
authorMarek Olšák <maraeo@gmail.com>2012-01-27 20:29:15 +0100
committerMarek Olšák <maraeo@gmail.com>2012-01-31 00:54:34 +0100
commitcb43954308f44717814b53f40672163384cc005e (patch)
tree9353cdc88f0c40d476df418e6426482ab2ec0cc2 /src/gallium/drivers
parentb478fcb9a99ef084674529f7db95f041db4a4796 (diff)
svga: set POINTSIZEMIN to 1.0 for non-sprite non-aa points
v2: add the helper function, improve the condition
Diffstat (limited to 'src/gallium/drivers')
-rw-r--r--src/gallium/drivers/svga/svga_state_rss.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/gallium/drivers/svga/svga_state_rss.c b/src/gallium/drivers/svga/svga_state_rss.c
index af68d9cde3d..1ee8b7f49b1 100644
--- a/src/gallium/drivers/svga/svga_state_rss.c
+++ b/src/gallium/drivers/svga/svga_state_rss.c
@@ -78,6 +78,7 @@ static int emit_rss( struct svga_context *svga,
unsigned dirty )
{
struct rs_queue queue;
+ float point_size_min;
queue.rs_count = 0;
@@ -211,14 +212,15 @@ static int emit_rss( struct svga_context *svga,
if (svga->state.sw.need_pipeline)
cullmode = SVGA3D_FACE_NONE;
+ point_size_min = util_get_min_point_size(&curr->templ);
+
EMIT_RS( svga, cullmode, CULLMODE, fail );
EMIT_RS( svga, curr->scissortestenable, SCISSORTESTENABLE, fail );
EMIT_RS( svga, curr->multisampleantialias, MULTISAMPLEANTIALIAS, fail );
EMIT_RS( svga, curr->lastpixel, LASTPIXEL, fail );
EMIT_RS( svga, curr->linepattern, LINEPATTERN, fail );
EMIT_RS_FLOAT( svga, curr->pointsize, POINTSIZE, fail );
- /* XXX still need to set this? */
- EMIT_RS_FLOAT( svga, 0.0, POINTSIZEMIN, fail );
+ EMIT_RS_FLOAT( svga, point_size_min, POINTSIZEMIN, fail );
EMIT_RS_FLOAT( svga, SVGA_MAX_POINTSIZE, POINTSIZEMAX, fail );
EMIT_RS( svga, curr->pointsprite, POINTSPRITEENABLE, fail);
}