[Bf-blender-cvs] [9c779e6] soc-2016-cycles_denoising: Cycles: Properly initialize some denoising-related variables

Lukas Stockner noreply at git.blender.org
Sat Nov 26 04:21:42 CET 2016


Commit: 9c779e605cc4d49fde13d6923f91dc79b558d122
Author: Lukas Stockner
Date:   Sat Nov 26 04:18:48 2016 +0100
Branches: soc-2016-cycles_denoising
https://developer.blender.org/rB9c779e605cc4d49fde13d6923f91dc79b558d122

Cycles: Properly initialize some denoising-related variables

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

M	intern/cycles/render/film.cpp
M	intern/cycles/render/session.cpp

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

diff --git a/intern/cycles/render/film.cpp b/intern/cycles/render/film.cpp
index 32a539f..afca94e 100644
--- a/intern/cycles/render/film.cpp
+++ b/intern/cycles/render/film.cpp
@@ -443,6 +443,9 @@ void Film::device_update(Device *device, DeviceScene *dscene, Scene *scene)
 		kfilm->pass_stride += pass.components;
 	}
 
+	kfilm->pass_denoising = 0;
+	kfilm->pass_no_denoising = 0;
+	kfilm->denoise_flag = 0;
 	kfilm->denoise_cross = 0;
 	if(denoising_passes) {
 		kfilm->pass_denoising = kfilm->pass_stride;
@@ -458,6 +461,7 @@ void Film::device_update(Device *device, DeviceScene *dscene, Scene *scene)
 			kfilm->use_light_pass = 1;
 		}
 	}
+
 	kfilm->num_frames = 1;
 	kfilm->prev_frames = 0;
 
diff --git a/intern/cycles/render/session.cpp b/intern/cycles/render/session.cpp
index 3d3f0a2..3ef3224 100644
--- a/intern/cycles/render/session.cpp
+++ b/intern/cycles/render/session.cpp
@@ -803,15 +803,14 @@ void Session::run_denoise()
 		kernel_data.film.pass_stride = buffers->params.get_passes_size();
 		kernel_data.film.pass_denoising = buffers->params.get_denoise_offset();
 		kernel_data.film.pass_no_denoising = buffers->params.selective_denoising? kernel_data.film.pass_denoising+20 : 0;
+		kernel_data.film.denoise_cross = 0;
 		kernel_data.film.exposure = 1.0f;
 		kernel_data.film.num_frames = buffers->params.frames;
 		kernel_data.film.prev_frames = params.prev_frames;
-		if(scene == NULL) {
-			kernel_data.integrator.filter_strength = params.filter_strength;
-			kernel_data.integrator.weighting_adjust = params.filter_weight_adjust;
-			kernel_data.integrator.use_gradients = params.filter_gradient;
-			kernel_data.integrator.use_nlm_weights = params.filter_nlm;
-		}
+		kernel_data.integrator.filter_strength = params.filter_strength;
+		kernel_data.integrator.weighting_adjust = params.filter_weight_adjust;
+		kernel_data.integrator.use_gradients = params.filter_gradient;
+		kernel_data.integrator.use_nlm_weights = params.filter_nlm;
 		device->const_copy_to("__data", &kernel_data, sizeof(kernel_data));
 
 		/* Generate tiles. */




More information about the Bf-blender-cvs mailing list