diff options
author | Ilia Mirkin <imirkin@alum.mit.edu> | 2016-02-16 14:29:38 -0500 |
---|---|---|
committer | Ilia Mirkin <imirkin@alum.mit.edu> | 2016-03-30 22:57:17 -0400 |
commit | 411a88accc8a2728abbdfbef4315addbc08cf5a3 (patch) | |
tree | 2f68e095821c26e2e85125eab98e5fe88984379a | |
parent | 5283e810157a3c392c9887e51c6ee0df849a4973 (diff) |
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>
-rw-r--r-- | src/mapi/glapi/gen/es_EXT.xml | 6 | ||||
-rw-r--r-- | src/mesa/main/enable.c | 4 | ||||
-rw-r--r-- | src/mesa/main/extensions_table.h | 1 | ||||
-rw-r--r-- | src/mesa/main/multisample.c | 3 | ||||
-rw-r--r-- | src/mesa/main/tests/dispatch_sanity.cpp | 3 |
5 files changed, 14 insertions, 3 deletions
diff --git a/src/mapi/glapi/gen/es_EXT.xml b/src/mapi/glapi/gen/es_EXT.xml index 8f8f997b20..8e51c05832 100644 --- a/src/mapi/glapi/gen/es_EXT.xml +++ b/src/mapi/glapi/gen/es_EXT.xml @@ -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"/> diff --git a/src/mesa/main/enable.c b/src/mesa/main/enable.c index b90a60ba03..d2830770ec 100644 --- a/src/mesa/main/enable.c +++ b/src/mesa/main/enable.c @@ -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; diff --git a/src/mesa/main/extensions_table.h b/src/mesa/main/extensions_table.h index 700ef24ab2..c1bcfc53d1 100644 --- a/src/mesa/main/extensions_table.h +++ b/src/mesa/main/extensions_table.h @@ -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) diff --git a/src/mesa/main/multisample.c b/src/mesa/main/multisample.c index 77773a2088..5453e38632 100644 --- a/src/mesa/main/multisample.c +++ b/src/mesa/main/multisample.c @@ -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; } diff --git a/src/mesa/main/tests/dispatch_sanity.cpp b/src/mesa/main/tests/dispatch_sanity.cpp index 309e574ac3..06e7ec1a19 100644 --- a/src/mesa/main/tests/dispatch_sanity.cpp +++ b/src/mesa/main/tests/dispatch_sanity.cpp @@ -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 } }; |