[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