+ changed |= SHADER_DATA;
+ }
+ shdata_applied = min<unsigned>(shdata_applied, shdata_stack.size());
+ changed |= MATRIX;
+ if(state->camera!=old_camera)
+ {
+ standard_shdata.uniform("projection_matrix", state->camera->get_projection_matrix());
+ changed |= STANDARD_SHDATA|LEGACY_PROJECTION;
+ }
+ if(state->lighting!=old_lighting)
+ {
+ if(state->lighting)
+ {
+ state->lighting->update_shader_data(standard_shdata, state->lighting_matrix);
+ changed |= STANDARD_SHDATA;
+ }
+ changed |= LEGACY_LIGHTING;
+ }
+ if(state->clipping!=old_clipping)
+ {
+ if(state->clipping)
+ {
+ state->clipping->update_shader_data(standard_shdata, state->clipping_matrix);
+ changed |= STANDARD_SHDATA;
+ }
+ changed |= LEGACY_CLIPPING;
+ }