[Bf-blender-cvs] [7c027f9480a] master: Cycles: Fixed Shadow and Mist passes with adaptive sampling.

Stefan Werner noreply at git.blender.org
Tue Mar 10 16:51:59 CET 2020


Commit: 7c027f9480a9dfa4e9a478a27300cff89a7f000a
Author: Stefan Werner
Date:   Tue Mar 10 16:50:51 2020 +0100
Branches: master
https://developer.blender.org/rB7c027f9480a9dfa4e9a478a27300cff89a7f000a

Cycles: Fixed Shadow and Mist passes with adaptive sampling.

This also fixes a side-effect where turning on UV pass but leaving
Shadow pass turned off destroyed the Combined pass.

===================================================================

M	intern/cycles/kernel/kernel_adaptive_sampling.h

===================================================================

diff --git a/intern/cycles/kernel/kernel_adaptive_sampling.h b/intern/cycles/kernel/kernel_adaptive_sampling.h
index 502b69e4f7f..047fe8c92ec 100644
--- a/intern/cycles/kernel/kernel_adaptive_sampling.h
+++ b/intern/cycles/kernel/kernel_adaptive_sampling.h
@@ -54,12 +54,6 @@ ccl_device void kernel_adaptive_post_adjust(KernelGlobals *kg,
 #ifdef __PASSES__
   int flag = kernel_data.film.pass_flag;
 
-  if (flag & PASSMASK(SHADOW))
-    *(ccl_global float3 *)(buffer + kernel_data.film.pass_shadow) *= sample_multiplier;
-
-  if (flag & PASSMASK(MIST))
-    *(ccl_global float *)(buffer + kernel_data.film.pass_mist) *= sample_multiplier;
-
   if (flag & PASSMASK(NORMAL))
     *(ccl_global float3 *)(buffer + kernel_data.film.pass_normal) *= sample_multiplier;
 
@@ -74,6 +68,11 @@ ccl_device void kernel_adaptive_post_adjust(KernelGlobals *kg,
   if (kernel_data.film.use_light_pass) {
     int light_flag = kernel_data.film.light_pass_flag;
 
+    if (light_flag & PASSMASK(MIST))
+      *(ccl_global float *)(buffer + kernel_data.film.pass_mist) *= sample_multiplier;
+
+    /* Shadow pass omitted on purpose. It has its own scale parameter. */
+
     if (light_flag & PASSMASK(DIFFUSE_INDIRECT))
       *(ccl_global float3 *)(buffer + kernel_data.film.pass_diffuse_indirect) *= sample_multiplier;
     if (light_flag & PASSMASK(GLOSSY_INDIRECT))



More information about the Bf-blender-cvs mailing list