diff --git a/hw/xbox/nv2a/pgraph.c b/hw/xbox/nv2a/pgraph.c index 37ccd0c3db..4f324ec7a3 100644 --- a/hw/xbox/nv2a/pgraph.c +++ b/hw/xbox/nv2a/pgraph.c @@ -6674,11 +6674,15 @@ static void pgraph_bind_vertex_attributes(NV2AState *d, } if (stride) { last_entry += stride * provoking_element_index; + pgraph_update_inline_value(attr, last_entry); } else { - last_entry += element_size * provoking_element_index; + // Stride of 0 indicates that only the first element should be + // used. + pgraph_update_inline_value(attr, last_entry); + glDisableVertexAttribArray(i); + glVertexAttrib4fv(i, attr->inline_value); + continue; } - - pgraph_update_inline_value(attr, last_entry); } NV2A_GL_DGROUP_END();