cogl-pipeline: Add more ignored state changes for program generation
For shader generation backends we don't need to worry about changes to the texture object and changing the user matrix. The missing user matrix flag was causing test-cogl-multitexture to regenerate the shader every frame.
This commit is contained in:
@ -946,7 +946,10 @@ _cogl_pipeline_backend_arbfp_layer_pre_change_notify (
|
|||||||
CoglPipelineBackendARBfpPrivate *priv;
|
CoglPipelineBackendARBfpPrivate *priv;
|
||||||
static const unsigned long not_fragment_op_changes =
|
static const unsigned long not_fragment_op_changes =
|
||||||
COGL_PIPELINE_LAYER_STATE_COMBINE_CONSTANT |
|
COGL_PIPELINE_LAYER_STATE_COMBINE_CONSTANT |
|
||||||
COGL_PIPELINE_LAYER_STATE_TEXTURE;
|
COGL_PIPELINE_LAYER_STATE_TEXTURE |
|
||||||
|
COGL_PIPELINE_LAYER_STATE_FILTERS |
|
||||||
|
COGL_PIPELINE_LAYER_STATE_WRAP_MODES |
|
||||||
|
COGL_PIPELINE_LAYER_STATE_USER_MATRIX;
|
||||||
|
|
||||||
priv = get_arbfp_priv (owner);
|
priv = get_arbfp_priv (owner);
|
||||||
if (!priv)
|
if (!priv)
|
||||||
|
@ -1204,7 +1204,10 @@ _cogl_pipeline_backend_glsl_layer_pre_change_notify (
|
|||||||
CoglPipelineBackendGlslPrivate *priv;
|
CoglPipelineBackendGlslPrivate *priv;
|
||||||
static const unsigned long not_fragment_op_changes =
|
static const unsigned long not_fragment_op_changes =
|
||||||
COGL_PIPELINE_LAYER_STATE_COMBINE_CONSTANT |
|
COGL_PIPELINE_LAYER_STATE_COMBINE_CONSTANT |
|
||||||
COGL_PIPELINE_LAYER_STATE_TEXTURE;
|
COGL_PIPELINE_LAYER_STATE_TEXTURE |
|
||||||
|
COGL_PIPELINE_LAYER_STATE_FILTERS |
|
||||||
|
COGL_PIPELINE_LAYER_STATE_WRAP_MODES |
|
||||||
|
COGL_PIPELINE_LAYER_STATE_USER_MATRIX;
|
||||||
|
|
||||||
priv = get_glsl_priv (owner);
|
priv = get_glsl_priv (owner);
|
||||||
if (!priv)
|
if (!priv)
|
||||||
|
Reference in New Issue
Block a user