[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