[Mesa-dev] [PATCH] mesa: Enable EXT_compressed_ETC1_RGB8_sub_texture

Jason Ekstrand jason at jlekstrand.net
Fri Jan 20 18:25:16 UTC 2017


On Fri, Jan 20, 2017 at 10:16 AM, Ilia Mirkin <imirkin at alum.mit.edu> wrote:

> What level of support would a driver need to provide? Can this just be
> enabled for all drivers? [This seems like largely a driver-side
> feature rather than hardware-based.]
>

My understanding is that we should just expose this extension on all
hardware that supports ETC1.  Obviously, if it doesn't support ETC1, you
don't get this extension. :-)


> On Fri, Jan 20, 2017 at 1:12 PM, Plamena Manolova
> <plamena.manolova at intel.com> wrote:
> > Since we already have the functionality in place and games
> > like Game of Thrones seem to depend on this extension, I
> > think it makes sense to enable it by making it part of
> > the extension string even though its still a draft:
> >
> > https://www.khronos.org/registry/gles/extensions/EXT/
> EXT_compressed_ETC1_RGB8_sub_texture.txt
> >
> > Note: OES_compressed_ETC1_RGB8_sub_texture seems to be listed
> > in gl2ext.h, but there's no documentation for it in the KHR
> > registry
> >
> > Signed-off-by: Plamena Manolova <plamena.manolova at intel.com>
> > ---
> >  src/mesa/drivers/dri/i965/intel_extensions.c | 1 +
> >  src/mesa/main/extensions_table.h             | 1 +
> >  src/mesa/main/mtypes.h                       | 1 +
> >  src/mesa/main/teximage.c                     | 5 +++++
> >  4 files changed, 8 insertions(+)
> >
> > diff --git a/src/mesa/drivers/dri/i965/intel_extensions.c
> b/src/mesa/drivers/dri/i965/intel_extensions.c
> > index b674b2f..bdf2fa5 100644
> > --- a/src/mesa/drivers/dri/i965/intel_extensions.c
> > +++ b/src/mesa/drivers/dri/i965/intel_extensions.c
> > @@ -93,6 +93,7 @@ intelInitExtensions(struct gl_context *ctx)
> >     ctx->Extensions.EXT_blend_equation_separate = true;
> >     ctx->Extensions.EXT_blend_func_separate = true;
> >     ctx->Extensions.EXT_blend_minmax = true;
> > +   ctx->Extensions.EXT_compressed_ETC1_RGB8_sub_texture = true;
> >     ctx->Extensions.EXT_draw_buffers2 = true;
> >     ctx->Extensions.EXT_framebuffer_sRGB = true;
> >     ctx->Extensions.EXT_gpu_program_parameters = true;
> > diff --git a/src/mesa/main/extensions_table.h
> b/src/mesa/main/extensions_table.h
> > index 2de3c59..8b52a97 100644
> > --- a/src/mesa/main/extensions_table.h
> > +++ b/src/mesa/main/extensions_table.h
> > @@ -198,6 +198,7 @@ EXT(EXT_buffer_storage                      ,
> ARB_buffer_storage
> >  EXT(EXT_clip_cull_distance                  , ARB_cull_distance
>               ,  x ,  x ,  x ,  30, 2016)
> >  EXT(EXT_color_buffer_float                  , dummy_true
>              ,  x ,  x ,  x ,  30, 2013)
> >  EXT(EXT_compiled_vertex_array               , dummy_true
>              , GLL,  x ,  x ,  x , 1996)
> > +EXT(EXT_compressed_ETC1_RGB8_sub_texture    ,
> EXT_compressed_ETC1_RGB8_sub_texture   ,  x ,  x , ES1, ES2, 2014)
> >  EXT(EXT_copy_image                          , OES_copy_image
>              ,  x ,  x ,  x ,  30, 2014)
> >  EXT(EXT_copy_texture                        , dummy_true
>              , GLL,  x ,  x ,  x , 1995)
> >  EXT(EXT_depth_bounds_test                   , EXT_depth_bounds_test
>               , GLL, GLC,  x ,  x , 2002)
> > diff --git a/src/mesa/main/mtypes.h b/src/mesa/main/mtypes.h
> > index f04ec51..719e248 100644
> > --- a/src/mesa/main/mtypes.h
> > +++ b/src/mesa/main/mtypes.h
> > @@ -3948,6 +3948,7 @@ struct gl_extensions
> >     GLboolean EXT_timer_query;
> >     GLboolean EXT_vertex_array_bgra;
> >     GLboolean EXT_window_rectangles;
> > +   GLboolean EXT_compressed_ETC1_RGB8_sub_texture;
> >     GLboolean OES_copy_image;
> >     GLboolean OES_primitive_bounding_box;
> >     GLboolean OES_sample_variables;
> > diff --git a/src/mesa/main/teximage.c b/src/mesa/main/teximage.c
> > index bc3b76a..14fe4db 100644
> > --- a/src/mesa/main/teximage.c
> > +++ b/src/mesa/main/teximage.c
> > @@ -1323,6 +1323,11 @@ compressedteximage_only_format(const struct
> gl_context *ctx, GLenum format)
> >  {
> >     switch (format) {
> >     case GL_ETC1_RGB8_OES:
> > +      if (ctx->Extensions.EXT_compressed_ETC1_RGB8_sub_texture)
> > +         return false;
> > +      else
> > +         return true;
> > +      break;
> >     case GL_PALETTE4_RGB8_OES:
> >     case GL_PALETTE4_RGBA8_OES:
> >     case GL_PALETTE4_R5_G6_B5_OES:
> > --
> > 2.4.3
> >
> > _______________________________________________
> > mesa-dev mailing list
> > mesa-dev at lists.freedesktop.org
> > https://lists.freedesktop.org/mailman/listinfo/mesa-dev
> _______________________________________________
> mesa-dev mailing list
> mesa-dev at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/mesa-dev
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/mesa-dev/attachments/20170120/f649f4c5/attachment.html>


More information about the mesa-dev mailing list