[Mesa-dev] [PATCH] Adding support for EXT_sRGB for Opengl ES

Emil Velikov emil.l.velikov at gmail.com
Wed Nov 8 17:01:05 UTC 2017


Hi Harish,

This seems to have fallen through the cracks, right?
Keep in mind that I've not checked all the existing code paths - just
skimming through the patch itself.

s/Adding support for EXT_sRGB for Opengl ES/mesa: add support for GL_EXT_sRGB/

On 7 April 2017 at 05:20, Harish Krupo <harish.krupo.kps at intel.com> wrote:
> This addes support for the GL_EXT_sRGB extension for OpengGL ES 1.0 and above.
> With this patch this test passes in dEQP:
> dEQP-GLES2.capability.extensions.uncompressed_texture_formats.GL_EXT_sRGB
>
Having a more comprehensive list [as mentioned by Tapani] would be great here.
X tests, A pass, B fail, C not supported.

> Signed-off-by: Harish Krupo <harish.krupo.kps at intel.com>
> ---
>  src/mapi/glapi/gen/es_EXT.xml                | 8 ++++++++
>  src/mesa/drivers/dri/i965/intel_extensions.c | 1 +
>  src/mesa/main/extensions_table.h             | 1 +
>  src/mesa/main/fbobject.c                     | 2 +-
>  src/mesa/main/genmipmap.c                    | 3 +++
>  src/mesa/main/mtypes.h                       | 1 +
>  6 files changed, 15 insertions(+), 1 deletion(-)
>
> diff --git a/src/mapi/glapi/gen/es_EXT.xml b/src/mapi/glapi/gen/es_EXT.xml
> index 3e705eb409..a6fd7c755a 100644
> --- a/src/mapi/glapi/gen/es_EXT.xml
> +++ b/src/mapi/glapi/gen/es_EXT.xml
> @@ -795,6 +795,14 @@
>      <enum name="FRAGMENT_SHADER_DISCARDS_SAMPLES_EXT" value="0x8A52"/>
>  </category>
>
> +<!-- 150. GL_EXT_sRGB -->
> +<category name="GL_EXT_sRGB" number="150">
Extension number seems to be 105


> --- a/src/mesa/main/genmipmap.c
> +++ b/src/mesa/main/genmipmap.c
> @@ -96,6 +96,9 @@ _mesa_is_valid_generate_texture_mipmap_internalformat(struct gl_context *ctx,
>               (_mesa_is_es3_color_renderable(internalformat) &&
>                _mesa_is_es3_texture_filterable(ctx, internalformat));
>     }
> +   else if (!_mesa_is_desktop_gl(ctx) && ctx->Extensions.EXT_sRGB && (internalformat == GL_SRGB)) {
> +      return GL_INVALID_OPERATION;
> +   }
I'm not sure how this would trigger - the function returns bool, thus
the GL_INVALID_OPERATION will be promoted to true.

Hence the caller (generate_texture_mipmap) will continue instead of
flagging an error.

HTH
Emil


More information about the mesa-dev mailing list