[Bf-blender-cvs] [9e8f939] GPU_data_request: add runtime check for gpu_shader4 support

Mike Erwin noreply at git.blender.org
Mon Apr 27 20:56:13 CEST 2015


Commit: 9e8f939769b5fc0c07a544b04f96488656629ada
Author: Mike Erwin
Date:   Mon Apr 27 14:40:46 2015 -0400
Branches: GPU_data_request
https://developer.blender.org/rB9e8f939769b5fc0c07a544b04f96488656629ada

add runtime check for gpu_shader4 support

This extension includes a number of GLSL enhancements:
- full integer support
- interpolation qualifiers (flat, smooth, noperspective)
- gl_VertexID, gl_PrimitiveID
- custom fragment shader outputs, for MRT

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

M	source/blender/gpu/GPU_extensions.h
M	source/blender/gpu/intern/gpu_extensions.c

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

diff --git a/source/blender/gpu/GPU_extensions.h b/source/blender/gpu/GPU_extensions.h
index fd51570..c9d5ae0 100644
--- a/source/blender/gpu/GPU_extensions.h
+++ b/source/blender/gpu/GPU_extensions.h
@@ -63,6 +63,7 @@ bool GPU_glsl_support(void);
 bool GPU_non_power_of_two_support(void);
 bool GPU_vertex_buffer_support(void);
 bool GPU_vertex_array_object_support(void);
+bool GPU_shader4_support(void);
 bool GPU_display_list_support(void);
 bool GPU_bicubic_bump_support(void);
 bool GPU_geometry_shader_support(void);
diff --git a/source/blender/gpu/intern/gpu_extensions.c b/source/blender/gpu/intern/gpu_extensions.c
index e3205fe..bae4798 100644
--- a/source/blender/gpu/intern/gpu_extensions.c
+++ b/source/blender/gpu/intern/gpu_extensions.c
@@ -307,6 +307,17 @@ bool GPU_vertex_array_object_support(void)
 	return GLEW_VERSION_3_0 || GLEW_ARB_vertex_array_object || GLEW_APPLE_vertex_array_object;
 }
 
+bool GPU_shader4_support(void)
+{
+	/* includes a number of GLSL enhancements:
+	 * - full integer support
+	 * - interpolation qualifiers (flat, smooth, noperspective)
+	 * - gl_VertexID, gl_PrimitiveID
+	 * - custom fragment shader outputs, for MRT
+	 */
+	return GLEW_VERSION_3_0 || GLEW_EXT_gpu_shader4;
+}
+
 bool GPU_display_list_support(void)
 {
 	return !GG.dlistsdisabled;




More information about the Bf-blender-cvs mailing list