[Bf-blender-cvs] [f5ab699] master: Fix cycles error for heterogenous volumes, causing double step size to be used.

Brecht Van Lommel noreply at git.blender.org
Sat Mar 29 15:33:16 CET 2014


Commit: f5ab699fe8e0ad191fcb64c4fc89f34f84ec7e46
Author: Brecht Van Lommel
Date:   Sat Mar 29 13:03:49 2014 +0100
https://developer.blender.org/rBf5ab699fe8e0ad191fcb64c4fc89f34f84ec7e46

Fix cycles error for heterogenous volumes, causing double step size to be used.

This gives longer render times due to smaller step size, double it to get
something more like the previous behavior.

===================================================================

M	intern/cycles/kernel/kernel_volume.h

===================================================================

diff --git a/intern/cycles/kernel/kernel_volume.h b/intern/cycles/kernel/kernel_volume.h
index 31c601a..b72774b 100644
--- a/intern/cycles/kernel/kernel_volume.h
+++ b/intern/cycles/kernel/kernel_volume.h
@@ -151,7 +151,7 @@ ccl_device void kernel_volume_shadow_heterogeneous(KernelGlobals *kg, PathState
 
 	for(int i = 0; i < max_steps; i++) {
 		/* advance to new position */
-		float new_t = min(ray->t, t + random_jitter_offset + i * step);
+		float new_t = min(ray->t, random_jitter_offset + i * step);
 		float3 new_P = ray->P + ray->D * new_t;
 		float3 new_sigma_t;
 
@@ -398,7 +398,7 @@ ccl_device VolumeIntegrateResult kernel_volume_integrate_heterogeneous(KernelGlo
 
 	for(int i = 0; i < max_steps; i++) {
 		/* advance to new position */
-		float new_t = min(ray->t, t + random_jitter_offset + i * step);
+		float new_t = min(ray->t, random_jitter_offset + i * step);
 		float3 new_P = ray->P + ray->D * new_t;
 		VolumeShaderCoefficients new_coeff;




More information about the Bf-blender-cvs mailing list