[Mesa-dev] [PATCH 1/8] mesa: handle OES_texture_half_float formats in _mesa_base_tex_format()

Tapani Pälli tapani.palli at intel.com
Mon Oct 23 07:51:34 UTC 2017


Maybe combine common items with ARB_texture_float check below? You could 
introduce something like:

if (ctx->Extensions.ARB_texture_float || 
ctx->Extensions.OES_texture_half_float) {
...
}

if (ctx->Extensions.ARB_texture_float || 
ctx->Extensions.OES_texture_float) {
...
}


On 10/20/2017 11:21 PM, Christian Gmeiner wrote:
> Signed-off-by: Christian Gmeiner <christian.gmeiner at gmail.com>
> ---
>   src/mesa/main/glformats.c | 19 +++++++++++++++++++
>   1 file changed, 19 insertions(+)
> 
> diff --git a/src/mesa/main/glformats.c b/src/mesa/main/glformats.c
> index 1e797c24c2..78299aebae 100644
> --- a/src/mesa/main/glformats.c
> +++ b/src/mesa/main/glformats.c
> @@ -2424,6 +2424,25 @@ _mesa_base_tex_format(const struct gl_context *ctx, GLint internalFormat)
>            return GL_YCBCR_MESA;
>      }
>   
> +   if (ctx->Extensions.OES_texture_half_float) {
> +       switch (internalFormat) {
> +       case GL_ALPHA16F_ARB:
> +          return GL_ALPHA;
> +       case GL_RGBA16F_ARB:
> +          return GL_RGBA;
> +       case GL_RGB16F_ARB:
> +          return GL_RGB;
> +       case GL_INTENSITY16F_ARB:
> +          return GL_INTENSITY;
> +       case GL_LUMINANCE16F_ARB:
> +          return GL_LUMINANCE;
> +       case GL_LUMINANCE_ALPHA16F_ARB:
> +          return GL_LUMINANCE_ALPHA;
> +       default:
> +          ; /* fallthrough */
> +       }
> +   }
> +
>      if (ctx->Extensions.ARB_texture_float) {
>         switch (internalFormat) {
>         case GL_ALPHA16F_ARB:
> 


More information about the etnaviv mailing list