[Bf-blender-cvs] [08f5ec2d2df] cycles-x: Fix Cycles X assert when writing Noisy Image pass

Brecht Van Lommel noreply at git.blender.org
Tue Jun 8 19:51:09 CEST 2021


Commit: 08f5ec2d2df28f828f9ed296759c0796b12d526d
Author: Brecht Van Lommel
Date:   Tue Jun 8 19:46:34 2021 +0200
Branches: cycles-x
https://developer.blender.org/rB08f5ec2d2df28f828f9ed296759c0796b12d526d

Fix Cycles X assert when writing Noisy Image pass

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

M	intern/cycles/integrator/pass_accessor.cpp

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

diff --git a/intern/cycles/integrator/pass_accessor.cpp b/intern/cycles/integrator/pass_accessor.cpp
index 5efe539ac4d..97269fbd51a 100644
--- a/intern/cycles/integrator/pass_accessor.cpp
+++ b/intern/cycles/integrator/pass_accessor.cpp
@@ -198,31 +198,34 @@ bool PassAccessor::get_render_tile_pixels(const RenderBuffers *render_buffers,
     }
   }
   else if (destination.num_components == 4) {
-    DCHECK_EQ(pass_info.num_components, 4)
-        << "Number of components mismatch for pass type " << pass_info.type;
-
-    /* RGBA */
-    if (type == PASS_SHADOW) {
-      get_pass_shadow4(render_buffers, buffer_params, destination);
-    }
-    else if (type == PASS_MOTION) {
-      get_pass_motion(render_buffers, buffer_params, destination);
-    }
-    else if (type == PASS_CRYPTOMATTE) {
-      get_pass_cryptomatte(render_buffers, buffer_params, destination);
-    }
-    else if (type == PASS_DENOISING_COLOR) {
+    if (type == PASS_DENOISING_COLOR) {
+      /* RGB to RGBA (alpha comes from combined pass). */
       get_pass_denoising_color(render_buffers, buffer_params, destination);
     }
-    else if (type == PASS_SHADOW_CATCHER) {
-      get_pass_shadow_catcher(render_buffers, buffer_params, destination);
-    }
-    else if (type == PASS_SHADOW_CATCHER_MATTE &&
-             pass_access_info_.use_approximate_shadow_catcher) {
-      get_pass_shadow_catcher_matte_with_shadow(render_buffers, buffer_params, destination);
-    }
     else {
-      get_pass_float4(render_buffers, buffer_params, destination);
+      DCHECK_EQ(pass_info.num_components, 4)
+          << "Number of components mismatch for pass type " << pass_info.type;
+
+      /* RGBA */
+      if (type == PASS_SHADOW) {
+        get_pass_shadow4(render_buffers, buffer_params, destination);
+      }
+      else if (type == PASS_MOTION) {
+        get_pass_motion(render_buffers, buffer_params, destination);
+      }
+      else if (type == PASS_CRYPTOMATTE) {
+        get_pass_cryptomatte(render_buffers, buffer_params, destination);
+      }
+      else if (type == PASS_SHADOW_CATCHER) {
+        get_pass_shadow_catcher(render_buffers, buffer_params, destination);
+      }
+      else if (type == PASS_SHADOW_CATCHER_MATTE &&
+               pass_access_info_.use_approximate_shadow_catcher) {
+        get_pass_shadow_catcher_matte_with_shadow(render_buffers, buffer_params, destination);
+      }
+      else {
+        get_pass_float4(render_buffers, buffer_params, destination);
+      }
     }
   }



More information about the Bf-blender-cvs mailing list