mesa: add GL_OES_sample_shading support

Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
Reviewed-by: Dave Airlie <airlied@redhat.com>
Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
This commit is contained in:
Ilia Mirkin 2016-02-16 14:29:38 -05:00
parent 5283e81015
commit 411a88accc
5 changed files with 14 additions and 3 deletions

View file

@ -798,6 +798,12 @@
</function>
</category>
<category name="GL_OES_sample_shading" number="169">
<function name="MinSampleShadingOES" alias="MinSampleShading" es2="3.0">
<param name="value" type="GLfloat"/>
</function>
</category>
<!-- 174. GL_OES_texture_storage_multisample_2d_array -->
<category name="GL_OES_texture_storage_multisample_2d_array" number="174">
<enum name="TEXTURE_2D_MULTISAMPLE_ARRAY_OES" value="0x9102"/>

View file

@ -807,7 +807,7 @@ _mesa_set_enable(struct gl_context *ctx, GLenum cap, GLboolean state)
/* GL_ARB_sample_shading */
case GL_SAMPLE_SHADING:
if (!_mesa_is_desktop_gl(ctx))
if (!_mesa_is_desktop_gl(ctx) && !_mesa_is_gles3(ctx))
goto invalid_enum_error;
CHECK_EXTENSION(ARB_sample_shading, cap);
if (ctx->Multisample.SampleShading == state)
@ -1606,7 +1606,7 @@ _mesa_IsEnabled( GLenum cap )
/* ARB_sample_shading */
case GL_SAMPLE_SHADING:
if (!_mesa_is_desktop_gl(ctx))
if (!_mesa_is_desktop_gl(ctx) && !_mesa_is_gles3(ctx))
goto invalid_enum_error;
CHECK_EXTENSION(ARB_sample_shading);
return ctx->Multisample.SampleShading;

View file

@ -330,6 +330,7 @@ EXT(OES_point_sprite , ARB_point_sprite
EXT(OES_query_matrix , dummy_true , x , x , ES1, x , 2003)
EXT(OES_read_format , dummy_true , GLL, GLC, ES1, x , 2003)
EXT(OES_rgb8_rgba8 , dummy_true , x , x , ES1, ES2, 2005)
EXT(OES_sample_shading , OES_sample_variables , x , x , x , 30, 2014)
EXT(OES_sample_variables , OES_sample_variables , x , x , x , 30, 2014)
EXT(OES_shader_image_atomic , ARB_shader_image_load_store , x , x , x , 31, 2015)
EXT(OES_single_precision , dummy_true , x , x , ES1, x , 2003)

View file

@ -127,7 +127,8 @@ _mesa_MinSampleShading(GLclampf value)
{
GET_CURRENT_CONTEXT(ctx);
if (!ctx->Extensions.ARB_sample_shading || !_mesa_is_desktop_gl(ctx)) {
if (!_mesa_has_ARB_sample_shading(ctx) &&
!_mesa_has_OES_sample_shading(ctx)) {
_mesa_error(ctx, GL_INVALID_OPERATION, "glMinSampleShading");
return;
}

View file

@ -2454,6 +2454,9 @@ const struct function gles3_functions_possible[] = {
{ "glTexBufferOES", 31, -1 },
{ "glTexBufferRangeOES", 31, -1 },
/* GL_OES_sample_shading */
{ "glMinSampleShadingOES", 30, -1 },
{ NULL, 0, -1 }
};