I find it strange that 7.10 Images does not mention this difference to desktop GL (when mentioning that locations can be queried with GetUniformLocation), one can only learn this by checking that all references to 'image' have been removed from the Uniform* calls.

Reviewed-by: Tapani Pälli <tapani.pa...@intel.com>


On 08/17/2015 07:45 PM, Francisco Jerez wrote:
The GLES 3.1 spec removed support for updating the image unit bound to
an image uniform using glUniform1i() calls.
---
  src/mesa/main/uniform_query.cpp | 4 +++-
  1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/src/mesa/main/uniform_query.cpp b/src/mesa/main/uniform_query.cpp
index 036530e..988ec76 100644
--- a/src/mesa/main/uniform_query.cpp
+++ b/src/mesa/main/uniform_query.cpp
@@ -677,9 +677,11 @@ _mesa_uniform(struct gl_context *ctx, struct 
gl_shader_program *shProg,
        match = (basicType != GLSL_TYPE_DOUBLE);
        break;
     case GLSL_TYPE_SAMPLER:
-   case GLSL_TYPE_IMAGE:
        match = (basicType == GLSL_TYPE_INT);
        break;
+   case GLSL_TYPE_IMAGE:
+      match = (basicType == GLSL_TYPE_INT && _mesa_is_desktop_gl(ctx));
+      break;
     default:
        match = (basicType == uni->type->base_type);
        break;

_______________________________________________
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/mesa-dev

Reply via email to