[Mesa-dev] [PATCH 2/4] mesa: add OES_texture_buffer and EXT_texture_buffer extension to table

Ilia Mirkin imirkin at alum.mit.edu
Mon Mar 28 18:53:10 UTC 2016


On Mon, Mar 28, 2016 at 2:48 PM, Ian Romanick <idr at freedesktop.org> wrote:
> On 02/27/2016 01:30 PM, Ilia Mirkin wrote:
>> Signed-off-by: Ilia Mirkin <imirkin at alum.mit.edu>
>> ---
>>  src/mesa/main/extensions_table.h | 2 ++
>>  src/mesa/main/mtypes.h           | 1 +
>>  2 files changed, 3 insertions(+)
>>
>> diff --git a/src/mesa/main/extensions_table.h b/src/mesa/main/extensions_table.h
>> index c139bb4..546948d 100644
>> --- a/src/mesa/main/extensions_table.h
>> +++ b/src/mesa/main/extensions_table.h
>> @@ -230,6 +230,7 @@ EXT(EXT_texture                             , dummy_true
>>  EXT(EXT_texture3D                           , dummy_true                             , GLL,  x ,  x ,  x , 1996)
>>  EXT(EXT_texture_array                       , EXT_texture_array                      , GLL, GLC,  x ,  x , 2006)
>>  EXT(EXT_texture_border_clamp                , ARB_texture_border_clamp               ,  x ,  x ,  x , ES2, 2014)
>> +EXT(EXT_texture_buffer                      , OES_texture_buffer                     ,  x ,  x ,  x ,  31, 2014)
>>  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)
>> @@ -346,6 +347,7 @@ EXT(OES_stencil_wrap                        , dummy_true
>>  EXT(OES_surfaceless_context                 , dummy_true                             ,  x ,  x , ES1, ES2, 2012)
>>  EXT(OES_texture_3D                          , dummy_true                             ,  x ,  x ,  x , ES2, 2005)
>>  EXT(OES_texture_border_clamp                , ARB_texture_border_clamp               ,  x ,  x ,  x , ES2, 2014)
>> +EXT(OES_texture_buffer                      , OES_texture_buffer                     ,  x ,  x ,  x ,  31, 2014)
>>  EXT(OES_texture_cube_map                    , ARB_texture_cube_map                   ,  x ,  x , ES1,  x , 2007)
>>  EXT(OES_texture_env_crossbar                , ARB_texture_env_crossbar               ,  x ,  x , ES1,  x , 2005)
>>  EXT(OES_texture_float                       , OES_texture_float                      ,  x ,  x ,  x , ES2, 2005)
>> diff --git a/src/mesa/main/mtypes.h b/src/mesa/main/mtypes.h
>> index ba1ce24..edfcb09 100644
>> --- a/src/mesa/main/mtypes.h
>> +++ b/src/mesa/main/mtypes.h
>> @@ -3905,6 +3905,7 @@ struct gl_extensions
>>     GLboolean OES_copy_image;
>>     GLboolean OES_sample_variables;
>>     GLboolean OES_standard_derivatives;
>> +   GLboolean OES_texture_buffer;
>
> The new bit is added because... OES_texture_buffer is a combination of
> GL_ARB_texture_buffer_object, GL_ARB_texture_buffer_range, and
> GL_ARB_texture_buffer_object_rgb32?  Could you mention that in the
> commit message (if it's not too late)?

Will do.

>
> Also... is there any hardware that supports only a subset of those
> extensions?  I'd be tempted to just have one flag for all of them.

... and ARB_shader_image_load_store, since it actually depends on ES
3.1, it also includes imageBuffer support.

nv50 doesn't support GL_ARB_texture_buffer_object_rgb32 but it does
support the other exts (except images... maybe enough for ES 3.1, but
def not enough for core -- ES 3.1 only requires them in compute
shaders... but even if that support is added, it still wouldn't
support ARB_tbo_rgb32).

I was thinking of dropping an enable into st/mesa along the lines of

OES_texture_buffer = ARB_texture_buffer_object_rgb32 &&
ARB_shader_image_load_store.

>
>>     /* vendor extensions */
>>     GLboolean AMD_performance_monitor;
>>     GLboolean AMD_pinned_memory;
>>
>


More information about the mesa-dev mailing list