Commit: 4546e35c92022997dacc322c8ab43df23bf98ca3 Author: Lukas Stockner Date: Sun Jan 8 21:38:54 2023 +0100 Branches: master https://developer.blender.org/rB4546e35c92022997dacc322c8ab43df23bf98ca3
Fix T95244: Cycles produces incorrect AO pass for shadow catchers Differential Revision: https://developer.blender.org/D16951 =================================================================== M intern/cycles/kernel/integrator/shade_surface.h =================================================================== diff --git a/intern/cycles/kernel/integrator/shade_surface.h b/intern/cycles/kernel/integrator/shade_surface.h index 19bec243757..3410195cd19 100644 --- a/intern/cycles/kernel/integrator/shade_surface.h +++ b/intern/cycles/kernel/integrator/shade_surface.h @@ -502,8 +502,15 @@ ccl_device_forceinline void integrate_surface_ao(KernelGlobals kg, rng_state, ccl_global float *ccl_restrict render_buffer) { + const uint32_t path_flag = INTEGRATOR_STATE(state, path, flag); + if (!(kernel_data.kernel_features & KERNEL_FEATURE_AO_ADDITIVE) && - !(INTEGRATOR_STATE(state, path, flag) & PATH_RAY_CAMERA)) { + !(path_flag & PATH_RAY_CAMERA)) { + return; + } + + /* Skip AO for paths that were split off for shadow catchers to avoid double-counting. */ + if (path_flag & PATH_RAY_SHADOW_CATCHER_PASS) { return; } _______________________________________________ Bf-blender-cvs mailing list [email protected] List details, subscription details or unsubscribe: https://lists.blender.org/mailman/listinfo/bf-blender-cvs
