[Mesa-dev] [PATCH 1/2] mesa/extensions: expose EXT_texture_compression_s3tc for ES2

Strasser, Kevin kevin.strasser at intel.com
Wed Nov 9 22:49:51 UTC 2016


On Wed, Nov 9, 2016 at 12:44 PM, Kenneth Graunke <kenneth at whitecape.org> wrote:
> On Wednesday, September 21, 2016 4:32:27 PM PST Kevin Strasser wrote:
> > The extension spec has been revised to include dependencies for OpenGL ES 2
> > and 3.
> >
> > Signed-off-by: Kevin Strasser <kevin.strasser at intel.com>
> > ---
> >  src/mesa/main/extensions_table.h | 2 +-
> >  1 file changed, 1 insertion(+), 1 deletion(-)
> >
> > diff --git a/src/mesa/main/extensions_table.h b/src/mesa/main/extensions_table.h
> > index c40dd79..977897e 100644
> > --- a/src/mesa/main/extensions_table.h
> > +++ b/src/mesa/main/extensions_table.h
> > @@ -251,7 +251,7 @@ EXT(EXT_texture_buffer                      , OES_texture_buffer
> >  EXT(EXT_texture_compression_dxt1            , ANGLE_texture_compression_dxt          , GLL, GLC, ES1, ES2, 2004)
> >  EXT(EXT_texture_compression_latc            , EXT_texture_compression_latc           , GLL,  x ,  x ,  x , 2006)
> >  EXT(EXT_texture_compression_rgtc            , ARB_texture_compression_rgtc           , GLL, GLC,  x ,  x , 2004)
> > -EXT(EXT_texture_compression_s3tc            , EXT_texture_compression_s3tc           , GLL, GLC,  x ,  x , 2000)
> > +EXT(EXT_texture_compression_s3tc            , EXT_texture_compression_s3tc           , GLL, GLC,  x , ES2, 2000)
> >  EXT(EXT_texture_cube_map                    , ARB_texture_cube_map                   , GLL,  x ,  x ,  x , 2001)
> >  EXT(EXT_texture_cube_map_array              , OES_texture_cube_map_array             ,  x ,  x ,  x ,  31, 2014)
> >  EXT(EXT_texture_edge_clamp                  , dummy_true                             , GLL,  x ,  x ,  x , 1997)
> >
>
> (resending from the correct email address...)
>
> I believe that _mesa_is_compressed_format (in src/mesa/main/glformats.c)
> needs updating.
>
> It looks like SRGB S3TC texture formats require:
> - EXT_texture_compression_s3tc
> - On GL: EXT_texture_sRGB
> - On ES: EXT_texture_sRGB_decode
>
> https://www.khronos.org/registry/gles/extensions/EXT/texture_sRGB_decode.txt
>
> So it probably needs to be:
>
>          return ctx->Extensions.EXT_texture_compression_s3tc &&
>                 (_mesa_is_gles(ctx) ? ctx->Extensions.EXT_texture_sRGB_decode
>                                     : ctx->Extensions.EXT_texture_sRGB);
>
> Otherwise this looks good to me.

Understood. Also, I noticed that the s3tc formats are being rejected by 
Tex[Sub]Image2d due to the additional format restrictions in
texture_format_error_check_gles(). I'll fix these things up and submit a v2
after I finish extending the s3tc piglit tests.

Thanks,
Kevin


More information about the mesa-dev mailing list