From 7f77bd95d982279766c2bfb38829b18fdbe55f02 Mon Sep 17 00:00:00 2001 From: Brecht Van Lommel Date: Tue, 15 Mar 2022 18:40:59 +0100 Subject: Fix T96381: Cycles GPU wrong render with camera inside multiple volumes --- intern/cycles/kernel/integrator/intersect_volume_stack.h | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'intern') 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 -- cgit v1.2.3