[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [17440] branches/sim_physics/source/ blender/render/intern/source/volumetric.c: * Fixed a float -> int conversion rounding error in volume rendering,

Matt Ebb matt at mke3.net
Thu Nov 13 11:43:02 CET 2008


Revision: 17440
          http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=17440
Author:   broken
Date:     2008-11-13 11:43:02 +0100 (Thu, 13 Nov 2008)

Log Message:
-----------
* Fixed a float -> int conversion rounding error in volume rendering,
which was manifesting in little dark dots

Modified Paths:
--------------
    branches/sim_physics/source/blender/render/intern/source/volumetric.c

Modified: branches/sim_physics/source/blender/render/intern/source/volumetric.c
===================================================================
--- branches/sim_physics/source/blender/render/intern/source/volumetric.c	2008-11-13 09:57:11 UTC (rev 17439)
+++ branches/sim_physics/source/blender/render/intern/source/volumetric.c	2008-11-13 10:43:02 UTC (rev 17440)
@@ -335,7 +335,7 @@
 	vol_get_absorption(shi, absorb_col, co);
 
 	dist = VecLenf(co, endco);
-	nsteps = (int)ceil(dist / stepsize);
+	nsteps = (int)((dist / stepsize) + 0.5);
 	
 	/* trigger for recalculating density */
 	if (density < -0.001f) density = vol_get_density(shi, co);
@@ -491,7 +491,7 @@
 	tr[0] = tr[1] = tr[2] = 1.0f;
 	
 	/* ray marching */
-	nsteps = (int)ceil(VecLenf(co, endco) / stepsize);
+	nsteps = (int)((VecLenf(co, endco) / stepsize) + 0.5);
 	
 	VecSubf(vec, endco, co);
 	VECCOPY(stepvec, vec);





More information about the Bf-blender-cvs mailing list