[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [51918] trunk/blender/source/blender/nodes : Fix for Math node:
Ton Roosendaal
ton at blender.org
Mon Nov 5 16:58:35 CET 2012
Revision: 51918
http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=51918
Author: ton
Date: 2012-11-05 15:58:35 +0000 (Mon, 05 Nov 2012)
Log Message:
-----------
Fix for Math node:
A test variable needed to be absoluted (positive).
Gives expected resuts on negative raiser values.
(next; digging in opencl :)
(In old compo code too, not effective).
Modified Paths:
--------------
trunk/blender/source/blender/nodes/composite/nodes/node_composite_math.c
trunk/blender/source/blender/nodes/shader/nodes/node_shader_math.c
Modified: trunk/blender/source/blender/nodes/composite/nodes/node_composite_math.c
===================================================================
--- trunk/blender/source/blender/nodes/composite/nodes/node_composite_math.c 2012-11-05 15:55:59 UTC (rev 51917)
+++ trunk/blender/source/blender/nodes/composite/nodes/node_composite_math.c 2012-11-05 15:58:35 UTC (rev 51918)
@@ -103,7 +103,8 @@
out[0] = pow(in[0], in2[0]);
}
else {
- float y_mod_1 = fmod(in2[0], 1);
+ float y_mod_1 = ABS(fmod(in2[0], 1));
+
/* if input value is not nearly an integer, fall back to zero, nicer than straight rounding */
if (y_mod_1 > 0.999f || y_mod_1 < 0.001f) {
out[0] = powf(in[0], floorf(in2[0] + 0.5f));
Modified: trunk/blender/source/blender/nodes/shader/nodes/node_shader_math.c
===================================================================
--- trunk/blender/source/blender/nodes/shader/nodes/node_shader_math.c 2012-11-05 15:55:59 UTC (rev 51917)
+++ trunk/blender/source/blender/nodes/shader/nodes/node_shader_math.c 2012-11-05 15:58:35 UTC (rev 51918)
@@ -142,7 +142,7 @@
out[0]->vec[0] = pow(in[0]->vec[0], in[1]->vec[0]);
}
else {
- float y_mod_1 = fmod(in[1]->vec[0], 1);
+ float y_mod_1 = ABS(fmod(in[1]->vec[0], 1));
/* if input value is not nearly an integer, fall back to zero, nicer than straight rounding */
if (y_mod_1 > 0.999f || y_mod_1 < 0.001f) {
More information about the Bf-blender-cvs
mailing list