r300g: fix updating a vertex format
We must update PSC when we change the vertex format, e.g. vertex colors from RGBA to BGRA.
This commit is contained in:
committed by
Corbin Simpson
parent
b7078a8811
commit
4e1236e602
@@ -687,6 +687,8 @@ static void r300_set_vertex_buffers(struct pipe_context* pipe,
|
||||
draw_flush(r300->draw);
|
||||
draw_set_vertex_buffers(r300->draw, count, buffers);
|
||||
}
|
||||
|
||||
r300->state |= R300_NEW_VERTEX_FORMAT;
|
||||
}
|
||||
|
||||
static void r300_set_vertex_elements(struct pipe_context* pipe,
|
||||
|
||||
@@ -512,7 +512,7 @@ static void r300_update_derived_shader_state(struct r300_context* r300)
|
||||
|
||||
r300->vertex_info = vformat;
|
||||
r300->rs_block = rs_block;
|
||||
r300->dirty_state |= (R300_NEW_VERTEX_FORMAT | R300_NEW_RS_BLOCK);
|
||||
r300->dirty_state |= R300_NEW_RS_BLOCK;
|
||||
}
|
||||
|
||||
static void r300_update_ztop(struct r300_context* r300)
|
||||
@@ -551,7 +551,8 @@ static void r300_update_ztop(struct r300_context* r300)
|
||||
void r300_update_derived_state(struct r300_context* r300)
|
||||
{
|
||||
if (r300->dirty_state &
|
||||
(R300_NEW_FRAGMENT_SHADER | R300_NEW_VERTEX_SHADER)) {
|
||||
(R300_NEW_FRAGMENT_SHADER | R300_NEW_VERTEX_SHADER |
|
||||
R300_NEW_VERTEX_FORMAT)) {
|
||||
r300_update_derived_shader_state(r300);
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user