mirror of
https://github.com/brl/mutter.git
synced 2024-11-23 00:20:42 -05:00
bf8a1b1eda
The ‘builtin uniforms’ are added to the GLSL code generated for the GLES2 driver to implement missing fixed functionality such as the builtin point sprite size and the alpha test reference. Previously the code that accessed these was #ifdef'd to be compiled only when GLES2 was enabled. However since 2701b93f part of this code is now always used even for non-GLES2 drivers. The code that accessed the builtin uniforms array was however no longer #ifdef'd which meant that it wouldn't compile any more if GLES2 was not enabled. This was further broken becase the GL3 driver actually should be using the alpha test uniform because that also does not provide any fixed functionality for alpha testing. To fix this the builtin uniform array is now always compiled in and the code to access it is always used. A new member has been added to the array to mark which private feature the uniform is used to replace. That is checked before updating the uniform so that under GLES2 it will update both uniforms but under GL3 it will only update the alpha test reference. Reviewed-by: Robert Bragg <robert@linux.intel.com> (cherry picked from commit 5469a25413883080df75a80153accf5d9124f716) |
||
---|---|---|
.. | ||
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 |