gallium/i915: need to recompute vertex info if vertex shader changes
This commit is contained in:
parent
b53110c789
commit
f41e957557
|
@ -263,6 +263,7 @@ struct i915_context
|
|||
#define I915_NEW_TEXTURE 0x800
|
||||
#define I915_NEW_CONSTANTS 0x1000
|
||||
#define I915_NEW_VBO 0x2000
|
||||
#define I915_NEW_VS 0x4000
|
||||
|
||||
|
||||
/* Driver's internally generated state flags:
|
||||
|
|
|
@ -474,6 +474,8 @@ static void i915_bind_vs_state(struct pipe_context *pipe, void *shader)
|
|||
|
||||
/* just pass-through to draw module */
|
||||
draw_bind_vertex_shader(i915->draw, (struct draw_vertex_shader *) shader);
|
||||
|
||||
i915->dirty |= I915_NEW_VS;
|
||||
}
|
||||
|
||||
static void i915_delete_vs_state(struct pipe_context *pipe, void *shader)
|
||||
|
|
|
@ -155,7 +155,7 @@ static void calculate_vertex_layout( struct i915_context *i915 )
|
|||
*/
|
||||
void i915_update_derived( struct i915_context *i915 )
|
||||
{
|
||||
if (i915->dirty & (I915_NEW_RASTERIZER | I915_NEW_FS))
|
||||
if (i915->dirty & (I915_NEW_RASTERIZER | I915_NEW_FS | I915_NEW_VS))
|
||||
calculate_vertex_layout( i915 );
|
||||
|
||||
if (i915->dirty & (I915_NEW_SAMPLER | I915_NEW_TEXTURE))
|
||||
|
|
Loading…
Reference in New Issue