Mesa (gles3): mesa/es3: Enable ES 3.0 API and shading language version
Ian Romanick
idr at kemper.freedesktop.org
Mon Jan 21 16:42:40 UTC 2013
Module: Mesa
Branch: gles3
Commit: 3388efee58d9281b1ffaa110dc72a59b334b3996
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=3388efee58d9281b1ffaa110dc72a59b334b3996
Author: Ian Romanick <ian.d.romanick at intel.com>
Date: Wed Aug 8 15:25:00 2012 -0700
mesa/es3: Enable ES 3.0 API and shading language version
v2: Add ARB_internalformat_query to the list of required extensions.
v3: Add OES_depth_texture_cube_map to the list of required extensions.
Signed-off-by: Ian Romanick <ian.d.romanick at intel.com>
---
src/mesa/main/getstring.c | 4 +++-
src/mesa/main/version.c | 25 ++++++++++++++++++++++++-
2 files changed, 27 insertions(+), 2 deletions(-)
diff --git a/src/mesa/main/getstring.c b/src/mesa/main/getstring.c
index 20e7a01..5d8b372 100644
--- a/src/mesa/main/getstring.c
+++ b/src/mesa/main/getstring.c
@@ -74,7 +74,9 @@ shading_language_version(struct gl_context *ctx)
break;
case API_OPENGLES2:
- return (const GLubyte *) "OpenGL ES GLSL ES 1.0.16";
+ return (ctx->Version < 30)
+ ? (const GLubyte *) "OpenGL ES GLSL ES 1.0.16"
+ : (const GLubyte *) "OpenGL ES GLSL ES 3.0";
case API_OPENGLES:
/* fall-through */
diff --git a/src/mesa/main/version.c b/src/mesa/main/version.c
index 4373d7b..e944a55 100644
--- a/src/mesa/main/version.c
+++ b/src/mesa/main/version.c
@@ -323,7 +323,30 @@ compute_version_es2(struct gl_context *ctx)
ctx->Extensions.ARB_fragment_shader &&
ctx->Extensions.ARB_texture_non_power_of_two &&
ctx->Extensions.EXT_blend_equation_separate);
- if (ver_2_0) {
+ /* FINISHME: This list isn't quite right. */
+ const GLboolean ver_3_0 = (ctx->Extensions.ARB_half_float_vertex &&
+ ctx->Extensions.ARB_internalformat_query &&
+ ctx->Extensions.ARB_map_buffer_range &&
+ ctx->Extensions.ARB_shader_texture_lod &&
+ ctx->Extensions.ARB_texture_float &&
+ ctx->Extensions.ARB_texture_rg &&
+ ctx->Extensions.ARB_texture_compression_rgtc &&
+ ctx->Extensions.EXT_draw_buffers2 &&
+ /* ctx->Extensions.ARB_framebuffer_object && */
+ ctx->Extensions.EXT_framebuffer_sRGB &&
+ ctx->Extensions.EXT_packed_float &&
+ ctx->Extensions.EXT_texture_array &&
+ ctx->Extensions.EXT_texture_shared_exponent &&
+ ctx->Extensions.EXT_transform_feedback &&
+ ctx->Extensions.NV_conditional_render &&
+ ctx->Extensions.ARB_draw_instanced &&
+ ctx->Extensions.ARB_uniform_buffer_object &&
+ ctx->Extensions.EXT_texture_snorm &&
+ ctx->Extensions.NV_primitive_restart &&
+ ctx->Extensions.OES_depth_texture_cube_map);
+ if (ver_3_0) {
+ ctx->Version = 30;
+ } else if (ver_2_0) {
ctx->Version = 20;
} else {
_mesa_problem(ctx, "Incomplete OpenGL ES 2.0 support.");
More information about the mesa-commit
mailing list