[Bf-blender-cvs] [21a8629ac6d] temp-cycles-denoising: Cycles Denoising: Fix reading of the new properties

Lukas Stockner noreply at git.blender.org
Thu May 4 14:58:37 CEST 2017


Commit: 21a8629ac6df2e00d2ff01548c552625e050c16c
Author: Lukas Stockner
Date:   Thu May 4 14:53:40 2017 +0200
Branches: temp-cycles-denoising
https://developer.blender.org/rB21a8629ac6df2e00d2ff01548c552625e050c16c

Cycles Denoising: Fix reading of the new properties

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

M	intern/cycles/blender/blender_session.cpp
M	intern/cycles/device/device_denoising.cpp

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

diff --git a/intern/cycles/blender/blender_session.cpp b/intern/cycles/blender/blender_session.cpp
index 8196a64a69e..cffa32631ec 100644
--- a/intern/cycles/blender/blender_session.cpp
+++ b/intern/cycles/blender/blender_session.cpp
@@ -425,9 +425,9 @@ void BlenderSession::render()
 		if(!get_boolean(crl, "denoising_subsurface_indirect"))   scene->film->denoising_flags |= DENOISING_CLEAN_SUBSURFACE_IND;
 		scene->film->denoising_clean_pass = (scene->film->denoising_flags & DENOISING_CLEAN_ALL_PASSES);
 		buffer_params.denoising_clean_pass = scene->film->denoising_clean_pass;
-		session->params.denoising_radius = get_boolean(crl, "denoising_radius");
-		session->params.denoising_strength = get_boolean(crl, "denoising_strength");
-		session->params.denoising_feature_strength = get_boolean(crl, "denoising_feature_strength");
+		session->params.denoising_radius = get_int(crl, "denoising_radius");
+		session->params.denoising_strength = get_float(crl, "denoising_strength");
+		session->params.denoising_feature_strength = get_float(crl, "denoising_feature_strength");
 		session->params.denoising_relative_pca = get_boolean(crl, "denoising_relative_pca");
 
 		scene->film->pass_alpha_threshold = b_layer_iter->pass_alpha_threshold();
diff --git a/intern/cycles/device/device_denoising.cpp b/intern/cycles/device/device_denoising.cpp
index 6e46f34c7c8..39c8cf30105 100644
--- a/intern/cycles/device/device_denoising.cpp
+++ b/intern/cycles/device/device_denoising.cpp
@@ -23,12 +23,12 @@ CCL_NAMESPACE_BEGIN
 void DenoisingTask::init_from_devicetask(const DeviceTask &task)
 {
 	radius = task.denoising_radius;
-	nlm_k_2 = powf(2.0f, task.denoising_strength - 1.0f);
+	nlm_k_2 = powf(2.0f, lerp(-5.0f, 3.0f, task.denoising_strength));
 	if(task.denoising_relative_pca) {
-		pca_threshold = -powf(10.0f, task.denoising_feature_strength - 4.0f);
+		pca_threshold = -powf(10.0f, lerp(-8.0f, 0.0f, task.denoising_feature_strength));
 	}
 	else {
-		pca_threshold = powf(10.0f, task.denoising_feature_strength - 1.0f);
+		pca_threshold = powf(10.0f, lerp(-5.0f, 3.0f, task.denoising_feature_strength));
 	}
 
 	render_buffer.pass_stride = task.pass_stride;




More information about the Bf-blender-cvs mailing list