From f806bd8261092334035e9cf1aaf0174285c3344f Mon Sep 17 00:00:00 2001 From: Sergey Sharybin Date: Mon, 4 Oct 2021 12:57:21 +0200 Subject: Fix T91861: Black environment behind shadow catcher Always sample background pass behind shadow catcher (if the pass exists, of course), regardless of whether shadow catcher will be used as approximate or accurate. Allows to combine accurate shadows into an environment map. Differential Revision: https://developer.blender.org/D12747 --- intern/cycles/kernel/integrator/integrator_intersect_closest.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'intern') diff --git a/intern/cycles/kernel/integrator/integrator_intersect_closest.h b/intern/cycles/kernel/integrator/integrator_intersect_closest.h index 34ca6814534..4e581df1870 100644 --- a/intern/cycles/kernel/integrator/integrator_intersect_closest.h +++ b/intern/cycles/kernel/integrator/integrator_intersect_closest.h @@ -123,7 +123,7 @@ ccl_device_forceinline void integrator_intersect_shader_next_kernel( #ifdef __SHADOW_CATCHER__ const int object_flags = intersection_get_object_flags(kg, isect); if (kernel_shadow_catcher_split(INTEGRATOR_STATE_PASS, object_flags)) { - if (kernel_data.film.use_approximate_shadow_catcher && !kernel_data.background.transparent) { + if (kernel_data.film.pass_background != PASS_UNUSED && !kernel_data.background.transparent) { INTEGRATOR_STATE_WRITE(path, flag) |= PATH_RAY_SHADOW_CATCHER_BACKGROUND; if (use_raytrace_kernel) { -- cgit v1.2.3