[Bf-blender-cvs] [f0ce39ab169] blender2.8: OpenGL: support GLSL 3.3 core profile

Mike Erwin noreply at git.blender.org
Fri Apr 7 18:54:02 CEST 2017


Commit: f0ce39ab169a1f12ee2e89dc8cc71a1d3709d98b
Author: Mike Erwin
Date:   Fri Apr 7 12:50:44 2017 -0400
Branches: blender2.8
https://developer.blender.org/rBf0ce39ab169a1f12ee2e89dc8cc71a1d3709d98b

OpenGL: support GLSL 3.3 core profile

When WITH_LEGACY_OPENGL = OFF.

This is our final target for Blender 2.8, all previous versions will be dropped in the future. GLSL 3.3 is richer so we don't require as many extensions.

===================================================================

M	source/blender/gpu/intern/gpu_shader.c

===================================================================

diff --git a/source/blender/gpu/intern/gpu_shader.c b/source/blender/gpu/intern/gpu_shader.c
index 7e705662ac5..cea03b09843 100644
--- a/source/blender/gpu/intern/gpu_shader.c
+++ b/source/blender/gpu/intern/gpu_shader.c
@@ -178,6 +178,7 @@ static void shader_print_errors(const char *task, const char *log, const char **
 
 static const char *gpu_shader_version(void)
 {
+#ifdef WITH_LEGACY_OPENGL
 	if (GLEW_VERSION_3_3) {
 		if (GPU_legacy_support()) {
 			return "#version 330 compatibility\n";
@@ -201,9 +202,11 @@ static const char *gpu_shader_version(void)
 		return "#version 120\n";
 		/* minimum supported */
 	}
+#else
+	return "#version 330\n";
+#endif
 }
 
-
 static void gpu_shader_standard_extensions(char defines[MAX_EXT_DEFINE_LENGTH], bool use_geometry_shader)
 {
 	/* enable extensions for features that are not part of our base GLSL version
@@ -215,6 +218,7 @@ static void gpu_shader_standard_extensions(char defines[MAX_EXT_DEFINE_LENGTH],
 		strcat(defines, "#extension GL_ARB_texture_query_lod: enable\n");
 	}
 
+#ifdef WITH_LEGACY_OPENGL
 	if (use_geometry_shader && GPU_geometry_shader_support_via_extension()) {
 		strcat(defines, "#extension GL_EXT_geometry_shader4: enable\n");
 	}
@@ -232,6 +236,9 @@ static void gpu_shader_standard_extensions(char defines[MAX_EXT_DEFINE_LENGTH],
 			strcat(defines, "#extension GL_EXT_gpu_shader4: require\n");
 		}
 	}
+#else
+	(void)use_geometry_shader;
+#endif
 }
 
 static void gpu_shader_standard_defines(char defines[MAX_DEFINE_LENGTH],




More information about the Bf-blender-cvs mailing list