mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-04-03 08:30:44 +02:00
r300g/swtcl: fix WPOS
There you are! r300->viewport_state is undefined when using SW TCL. Piglit score (r300g.tests): HW TCL: 231/275 SW TCL: 233/275
This commit is contained in:
parent
49244df5a8
commit
3262554bb3
2 changed files with 8 additions and 9 deletions
|
|
@ -134,7 +134,6 @@ static const float * get_rc_constant_state(
|
|||
struct r300_context * r300,
|
||||
struct rc_constant * constant)
|
||||
{
|
||||
struct r300_viewport_state* viewport = r300->viewport_state.state;
|
||||
struct r300_textures_state* texstate = r300->textures_state.state;
|
||||
static float vec[4] = { 0.0, 0.0, 0.0, 1.0 };
|
||||
struct pipe_resource *tex;
|
||||
|
|
@ -151,15 +150,15 @@ static const float * get_rc_constant_state(
|
|||
break;
|
||||
|
||||
case RC_STATE_R300_VIEWPORT_SCALE:
|
||||
vec[0] = viewport->xscale;
|
||||
vec[1] = viewport->yscale;
|
||||
vec[2] = viewport->zscale;
|
||||
vec[0] = r300->viewport.scale[0];
|
||||
vec[1] = r300->viewport.scale[1];
|
||||
vec[2] = r300->viewport.scale[2];
|
||||
break;
|
||||
|
||||
case RC_STATE_R300_VIEWPORT_OFFSET:
|
||||
vec[0] = viewport->xoffset;
|
||||
vec[1] = viewport->yoffset;
|
||||
vec[2] = viewport->zoffset;
|
||||
vec[0] = r300->viewport.translate[0];
|
||||
vec[1] = r300->viewport.translate[1];
|
||||
vec[2] = r300->viewport.translate[2];
|
||||
break;
|
||||
|
||||
default:
|
||||
|
|
|
|||
|
|
@ -352,7 +352,7 @@ void r300_draw_init_vertex_shader(struct draw_context *draw,
|
|||
/* Init the VS output table for the rasterizer. */
|
||||
r300_init_vs_outputs(vs);
|
||||
|
||||
/**/
|
||||
/* Make the last generic be WPOS. */
|
||||
vs->outputs.wpos = vs->outputs.generic[transform.last_generic + 1];
|
||||
vs->outputs.generic[transform.last_generic + 1] = ATTR_UNUSED;
|
||||
vs->outputs.wpos -= 1;
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue