Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/intern
diff options
context:
space:
mode:
authorBrecht Van Lommel <brecht@blender.org>2022-03-15 20:40:59 +0300
committerBrecht Van Lommel <brecht@blender.org>2022-03-15 20:42:08 +0300
commit7f77bd95d982279766c2bfb38829b18fdbe55f02 (patch)
tree9954c6208025a80265aa1ec2831aa64370f6a66e /intern
parentc2f9133b292487e91577484277261fede824a085 (diff)
Fix T96381: Cycles GPU wrong render with camera inside multiple volumes
Diffstat (limited to 'intern')
-rw-r--r--intern/cycles/kernel/integrator/intersect_volume_stack.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/intern/cycles/kernel/integrator/intersect_volume_stack.h b/intern/cycles/kernel/integrator/intersect_volume_stack.h
index 4cc933aff50..49ef01dc870 100644
--- a/intern/cycles/kernel/integrator/intersect_volume_stack.h
+++ b/intern/cycles/kernel/integrator/intersect_volume_stack.h
@@ -59,6 +59,8 @@ ccl_device void integrator_volume_stack_update_for_subsurface(KernelGlobals kg,
/* Move ray forward. */
volume_ray.P = stack_sd->P;
+ volume_ray.self.object = isect.object;
+ volume_ray.self.prim = isect.prim;
if (volume_ray.t != FLT_MAX) {
volume_ray.D = normalize_len(to_P - volume_ray.P, &volume_ray.t);
}
@@ -198,6 +200,8 @@ ccl_device void integrator_volume_stack_init(KernelGlobals kg, IntegratorState s
/* Move ray forward. */
volume_ray.P = stack_sd->P;
+ volume_ray.self.object = isect.object;
+ volume_ray.self.prim = isect.prim;
++step;
}
#endif