[Mesa-dev] [PATCH 07/25] mesa: Refuse to bind image uniforms using glUniform in GLES.

Tapani Pälli tapani.palli at intel.com
Mon Aug 17 22:51:56 PDT 2015


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.palli at 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;
>


More information about the mesa-dev mailing list