diff options
author | Marek Olšák <[email protected]> | 2012-04-22 19:21:45 +0200 |
---|---|---|
committer | Marek Olšák <[email protected]> | 2012-04-23 22:58:02 +0200 |
commit | 802ca81e260f6ccfe2cf492e96b2887131bed09c (patch) | |
tree | e40ad385a6676ca5cd4fc4e305307839a58625eb /src/mesa/vbo/vbo_exec_array.c | |
parent | 6fc565a94bc0de7ad617c28db7b8b6dfa4102d49 (diff) |
vbo: call UpdateState directly when notifying a driver about _NEW_ARRAY
Core Mesa doesn't need to know about this.
This also removes the hack in recalculate_input_bindings.
Reviewed-by: Brian Paul <[email protected]>
Diffstat (limited to 'src/mesa/vbo/vbo_exec_array.c')
-rw-r--r-- | src/mesa/vbo/vbo_exec_array.c | 12 |
1 files changed, 1 insertions, 11 deletions
diff --git a/src/mesa/vbo/vbo_exec_array.c b/src/mesa/vbo/vbo_exec_array.c index 28019afeb81..2dcfb8e5b8c 100644 --- a/src/mesa/vbo/vbo_exec_array.c +++ b/src/mesa/vbo/vbo_exec_array.c @@ -438,14 +438,6 @@ recalculate_input_bindings(struct gl_context *ctx) inputs[VERT_ATTRIB_GENERIC(i)] = &vbo->currval[VBO_ATTRIB_GENERIC0+i]; const_inputs |= VERT_BIT_GENERIC(i); } - - /* There is no need to make _NEW_ARRAY dirty here for the TnL program, - * because it already takes care of invalidating the state necessary - * to revalidate vertex arrays. Not marking the state as dirty also - * improves performance (quite significantly in some apps). - */ - if (!ctx->VertexProgram._MaintainTnlProgram) - ctx->NewState |= _NEW_ARRAY; break; case VP_NV: @@ -472,8 +464,6 @@ recalculate_input_bindings(struct gl_context *ctx) inputs[VERT_ATTRIB_GENERIC(i)] = &vbo->currval[VBO_ATTRIB_GENERIC0+i]; const_inputs |= VERT_BIT_GENERIC(i); } - - ctx->NewState |= _NEW_ARRAY; break; case VP_ARB: @@ -512,11 +502,11 @@ recalculate_input_bindings(struct gl_context *ctx) } inputs[VERT_ATTRIB_GENERIC0] = inputs[0]; - ctx->NewState |= _NEW_ARRAY; break; } _mesa_set_varying_vp_inputs( ctx, VERT_BIT_ALL & (~const_inputs) ); + ctx->Driver.UpdateState(ctx, _NEW_ARRAY); } |