[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [54647] branches/ge_harmony/source: The last commit broke consistency in bgl naming scheme.

Daniel Stokes kupomail at gmail.com
Tue Feb 19 01:41:16 CET 2013


Revision: 54647
          http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=54647
Author:   kupoman
Date:     2013-02-19 00:41:13 +0000 (Tue, 19 Feb 2013)
Log Message:
-----------
The last commit broke consistency in bgl naming scheme. Also making matrix uniforms a little safer with a NULL check in RNA, and removing some dead code.

Modified Paths:
--------------
    branches/ge_harmony/source/blender/gpu/shaders/gpu_shader_light_frag.glsl
    branches/ge_harmony/source/blender/makesrna/intern/rna_shader.c
    branches/ge_harmony/source/gameengine/Rasterizer/RAS_OpenGLRasterizer/RAS_OpenGLRasterizer.cpp

Modified: branches/ge_harmony/source/blender/gpu/shaders/gpu_shader_light_frag.glsl
===================================================================
--- branches/ge_harmony/source/blender/gpu/shaders/gpu_shader_light_frag.glsl	2013-02-19 00:35:56 UTC (rev 54646)
+++ branches/ge_harmony/source/blender/gpu/shaders/gpu_shader_light_frag.glsl	2013-02-19 00:41:13 UTC (rev 54647)
@@ -49,7 +49,7 @@
 uniform sampler2D bgl_PrepassTarget1;
 uniform sampler2D bgl_DepthTexture;
 
-uniform mat4 inv_proj_matrix;
+uniform mat4 bgl_InvProjMat;
 uniform vec4 bgl_Bounds;
 
 void main()
@@ -77,7 +77,7 @@
 		proj.z = depth;
 		proj.xyz = proj.xyz * 2.0 - vec3(1.0, 1.0, 1.0);
 		proj.w = 1.0;
-		proj = inv_proj_matrix * proj;
+		proj = bgl_InvProjMat * proj;
 		V.xyz = proj.xyz/proj.w;
 	}
 

Modified: branches/ge_harmony/source/blender/makesrna/intern/rna_shader.c
===================================================================
--- branches/ge_harmony/source/blender/makesrna/intern/rna_shader.c	2013-02-19 00:35:56 UTC (rev 54646)
+++ branches/ge_harmony/source/blender/makesrna/intern/rna_shader.c	2013-02-19 00:41:13 UTC (rev 54647)
@@ -173,8 +173,10 @@
 	int i;
 
 	memset(values, 0.f, sizeof(float)*uni->size);
-	for(i = 0; i < uni->size; i++)
-		values[i] = ((float*)uni->data)[i];
+	if (uni->data) {
+		for(i = 0; i < uni->size; i++)
+			values[i] = ((float*)uni->data)[i];
+	}
 }
 
 static void rna_VecUniform_value_set(struct PointerRNA *ptr, const float *values)

Modified: branches/ge_harmony/source/gameengine/Rasterizer/RAS_OpenGLRasterizer/RAS_OpenGLRasterizer.cpp
===================================================================
--- branches/ge_harmony/source/gameengine/Rasterizer/RAS_OpenGLRasterizer/RAS_OpenGLRasterizer.cpp	2013-02-19 00:35:56 UTC (rev 54646)
+++ branches/ge_harmony/source/gameengine/Rasterizer/RAS_OpenGLRasterizer/RAS_OpenGLRasterizer.cpp	2013-02-19 00:41:13 UTC (rev 54647)
@@ -1458,15 +1458,9 @@
 	bind = GPU_shader_get_uniform(m_light_shader, "bgl_DepthTexture");
 	glUniform1iARB(bind, 2);
 
-	//float magic[2];
-	//magic[0] = camera->m_clipend / (camera->m_clipend - camera->m_clipstart);
-	//magic[1] = (-camera->m_clipend * camera->m_clipstart) / (camera->m_clipend - camera->m_clipstart);
-	//bind = GPU_shader_get_uniform(m_light_shader, "magic");
-	//GPU_shader_uniform_vector(m_light_shader, bind, 2, 1, magic);
-
 	float inv_proj_matrix[16];
 	m_projmatrix.inverse().getValue(inv_proj_matrix);
-	bind = GPU_shader_get_uniform(m_light_shader, "inv_proj_matrix");
+	bind = GPU_shader_get_uniform(m_light_shader, "bgl_InvProjMat");
 	GPU_shader_uniform_vector(m_light_shader, bind, 16, 1, inv_proj_matrix);
 
 	float bounds[4] = {(float)m_width, (float)m_height, 0.0, 0.0};




More information about the Bf-blender-cvs mailing list