a131b697d9
Previously the sampler uniform declarations such as cogl_sampler0 were generated by walking the list of layers in the shader state. This had two problems. Firstly it would only generate the declarations for layers that have been referenced. If a layer has a combine mode of replace then the samplers from previous layers couldn't be used by custom snippets. Secondly it meant that the samplers couldn't be referenced by functions in the declarations sections because the samplers are declared too late. This patch fixes it to generate the layer declarations in the backend start function using all of the layers on the pipeline instead. In addition it adds the sampler declarations to the vertex shader as they were previously missing. Reviewed-by: Robert Bragg <robert@linux.intel.com> (cherry picked from commit 1824df902bbb9995cae6ffb7a413913f2df35eef) Conflicts: cogl/driver/gl/cogl-pipeline-fragend-glsl.c cogl/driver/gl/cogl-pipeline-vertend-glsl.c |
||
---|---|---|
.. | ||
gl | ||
gles | ||
cogl-attribute-gl-private.h | ||
cogl-attribute-gl.c | ||
cogl-buffer-gl-private.h | ||
cogl-buffer-gl.c | ||
cogl-clip-stack-gl-private.h | ||
cogl-clip-stack-gl.c | ||
cogl-framebuffer-gl-private.h | ||
cogl-framebuffer-gl.c | ||
cogl-pipeline-fragend-fixed-private.h | ||
cogl-pipeline-fragend-fixed.c | ||
cogl-pipeline-fragend-glsl-private.h | ||
cogl-pipeline-fragend-glsl.c | ||
cogl-pipeline-opengl-private.h | ||
cogl-pipeline-opengl.c | ||
cogl-pipeline-progend-fixed-private.h | ||
cogl-pipeline-progend-fixed.c | ||
cogl-pipeline-progend-glsl-private.h | ||
cogl-pipeline-progend-glsl.c | ||
cogl-pipeline-vertend-fixed-private.h | ||
cogl-pipeline-vertend-fixed.c | ||
cogl-pipeline-vertend-glsl-private.h | ||
cogl-pipeline-vertend-glsl.c | ||
cogl-texture-2d-gl-private.h | ||
cogl-texture-2d-gl.c | ||
cogl-texture-gl-private.h | ||
cogl-texture-gl.c | ||
cogl-util-gl-private.h | ||
cogl-util-gl.c |