Merge branch 'gallium-nopointsizeminmax'

Conflicts:
	src/gallium/drivers/nv10/nv10_state.c
	src/gallium/drivers/nv20/nv20_state.c
	src/gallium/drivers/nv50/nv50_program.c
This commit is contained in:
Roland Scheidegger
2010-02-09 19:32:21 +01:00
28 changed files with 1381 additions and 104 deletions

View File

@@ -119,18 +119,20 @@ point_size_per_vertex
Whether vertices have a point size element.
point_size
The size of points, if not specified per-vertex.
point_size_min
The minimum size of points.
point_size_max
The maximum size of points.
point_sprite
Whether points are drawn as sprites (textured quads)
sprite_coord_enable
Specifies if a coord has its texture coordinates replaced or not. This
is a packed bitfield containing the enable for all coords - if all are 0
point sprites are effectively disabled, though points may still be
rendered slightly different according to point_quad_rasterization.
If any coord is non-zero, point_smooth should be disabled, and
point_quad_rasterization enabled.
If enabled, the four vertices of the resulting quad will be assigned
texture coordinates, according to sprite_coord_mode.
sprite_coord_mode
Specifies how the value for each shader output should be computed when
drawing sprites. If PIPE_SPRITE_COORD_NONE, don't change the vertex
shader output. Otherwise, the four vertices of the resulting quad will
be assigned texture coordinates. For PIPE_SPRITE_COORD_LOWER_LEFT, the
lower left vertex will have coordinate (0,0,0,1).
drawing sprites, for each coord which has sprite_coord_enable set.
For PIPE_SPRITE_COORD_LOWER_LEFT, the lower left vertex will have
coordinate (0,0,0,1).
For PIPE_SPRITE_COORD_UPPER_LEFT, the upper-left vertex will have
coordinate (0,0,0,1).
This state is needed by :ref:`Draw` because that's where each
@@ -139,7 +141,15 @@ sprite_coord_mode
sprite rendering.
Note that when geometry shaders are available, this state could be
removed. A special geometry shader defined by the state tracker could
converts the incoming points into quads with the proper texture coords.
convert the incoming points into quads with the proper texture coords.
point_quad_rasterization
This determines if points should be rasterized as quads or points.
d3d always uses quad rasterization for points, regardless if point sprites
are enabled or not, but OGL has different rules. If point_quad_rasterization
is set, point_smooth should be disabled, and points will be rendered as
squares even if multisample is enabled.
sprite_coord_enable should be zero if point_quad_rasterization is not
enabled.
scissor
Whether the scissor test is enabled.