From b272a01879d6d5e952b37f574fa85ed7f785abc5 Mon Sep 17 00:00:00 2001 From: Paul Berry Date: Sun, 28 Jul 2013 09:23:11 -0700 Subject: main: Allow for the possibility of GL 3.2 without ARB_geometry_shader4. Previously, we assumed that the only way Mesa would expose geometry shader support was via the ARB_geometry_shader4 extension. But this extension has some extra complications over GL 3.2 (interactions with compatibility-only features, and link-time initialization of the constant gl_VerticesIn). So we want to allow for the possibility of supporting GL 3.2 (with GLSL 1.50 style geometry shaders) even if ctx->Extensions.ARB_geometry_shader4 is false. This patch adds a new function, _mesa_has_geometry_shaders(), which returns true if either ARB_geometry_shader4 is supported or the GL version is at least 3.2 desktop. Since compute_version() only enables GL 3.2 functionality when GLSL 1.50 support is present, a sufficient way for a back-end to advertise geometry shader support is to set ctx->Const.GLSLVersion >= 150. v2: Remove unnecessary ctx->Const.GeometryShaders150 constant. Reviewed-by: Ian Romanick Reviewed-by: Kenneth Graunke --- src/mesa/main/version.c | 1 - 1 file changed, 1 deletion(-) (limited to 'src/mesa/main/version.c') diff --git a/src/mesa/main/version.c b/src/mesa/main/version.c index ab9b14c026e..55411faf8c5 100644 --- a/src/mesa/main/version.c +++ b/src/mesa/main/version.c @@ -262,7 +262,6 @@ compute_version(struct gl_context *ctx) ctx->Extensions.ARB_depth_clamp && ctx->Extensions.ARB_draw_elements_base_vertex && ctx->Extensions.ARB_fragment_coord_conventions && - ctx->Extensions.ARB_geometry_shader4 && ctx->Extensions.EXT_provoking_vertex && ctx->Extensions.ARB_seamless_cube_map && ctx->Extensions.ARB_sync && -- cgit v1.2.3