diff options
author | Sergey Sharybin <sergey@blender.org> | 2021-10-04 13:57:21 +0300 |
---|---|---|
committer | Sergey Sharybin <sergey@blender.org> | 2021-10-04 16:07:32 +0300 |
commit | f806bd8261092334035e9cf1aaf0174285c3344f (patch) | |
tree | 55e91f7d40d5d7d64957d03c578d52a15c19e1f5 | |
parent | fc4886a31426b6fe40982f5288c8d129a1ce3223 (diff) |
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
-rw-r--r-- | intern/cycles/kernel/integrator/integrator_intersect_closest.h | 2 |
1 files changed, 1 insertions, 1 deletions
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) { |