[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [11266] branches/soc-2007-maike/source/ blender/src/glsl_uniforms.c: Segfault correction
Miguel Torres Lima
torreslima at gmail.com
Fri Jul 13 18:10:34 CEST 2007
Revision: 11266
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=11266
Author: maike
Date: 2007-07-13 18:10:34 +0200 (Fri, 13 Jul 2007)
Log Message:
-----------
Segfault correction
Modified Paths:
--------------
branches/soc-2007-maike/source/blender/src/glsl_uniforms.c
Modified: branches/soc-2007-maike/source/blender/src/glsl_uniforms.c
===================================================================
--- branches/soc-2007-maike/source/blender/src/glsl_uniforms.c 2007-07-13 15:11:24 UTC (rev 11265)
+++ branches/soc-2007-maike/source/blender/src/glsl_uniforms.c 2007-07-13 16:10:34 UTC (rev 11266)
@@ -262,17 +262,28 @@
char *ambcolor = "amb_color";
char *ambexp = "amb_exp";
char *ambrange = "amb_range";
+ float amb_exp;
+ float amb_range;
- float amb_exp = 1.0f + pow((2.0f * wrld->exp + 0.5f), -10.0f);
- float amb_range = log((amb_exp - 1) / (amb_exp)) / wrld->range;
-
+ if(wrld){
+ amb_exp = 1.0f + pow((2.0f * wrld->exp + 0.5f), -10.0f);
+ amb_range = log((amb_exp - 1) / (amb_exp)) / wrld->range;
+ }
+ else{
+ amb_exp = 1.0f + pow((2.0f * 0.0 + 0.5f), -10.0f);
+ amb_range = log((amb_exp - 1) / (amb_exp)) / 1.0;
+ }
+
glUseProgram(program);
+
+ if(wrld){
+ glUniform3f(glsl_uniform_location(program, ambcolor), wrld->ambr, wrld->ambg, wrld->ambb);
+ glUniform3f(glsl_uniform_location(program, ambcolor), wrld->ambr, wrld->ambg, wrld->ambb);
+ }
- glUniform3f(glsl_uniform_location(program, ambcolor), wrld->ambr, wrld->ambg, wrld->ambb);
- glUniform3f(glsl_uniform_location(program, ambcolor), wrld->ambr, wrld->ambg, wrld->ambb);
glUniform1f(glsl_uniform_location(program, ambexp), amb_exp);
glUniform1f(glsl_uniform_location(program, ambrange), amb_range);
-
+
glUseProgram(0);
}
More information about the Bf-blender-cvs
mailing list