Commit: 7df40050f94e64dca41d36448847068214650e85
Author: Sergey Sharybin
Date: Fri Jul 2 18:44:26 2021 +0200
Branches: cycles-x
https://developer.blender.org/rB7df40050f94e64dca41d36448847068214650e85
Fix Cycles X OIDN with adaptive sampling
The decision on whether to scale input buffer was wrong.
It was wrong from the beginning in the Cycles X branch,
but the bug got avoided by some other state set differently.
===================================================================
M intern/cycles/integrator/denoiser_oidn.cpp
===================================================================
diff --git a/intern/cycles/integrator/denoiser_oidn.cpp
b/intern/cycles/integrator/denoiser_oidn.cpp
index 2c0cbeb922e..f3b1e5e5797 100644
--- a/intern/cycles/integrator/denoiser_oidn.cpp
+++ b/intern/cycles/integrator/denoiser_oidn.cpp
@@ -255,7 +255,10 @@ class OIDNDenoiseContext {
return;
}
- if (!oidn_pass.need_scale || (num_samples_ == 1 && pass_sample_count_ ==
PASS_UNUSED)) {
+ /* When adaptive sampling is involved scaling is always needed.
+ * If the avoid scaling if there is only one sample, to save up time (so
we dont divide buffer
+ * by 1). */
+ if (pass_sample_count_ == PASS_UNUSED && (!oidn_pass.need_scale ||
num_samples_ == 1)) {
set_pass_referenced(oidn_pass);
return;
}
_______________________________________________
Bf-blender-cvs mailing list
[email protected]
List details, subscription details or unsubscribe:
https://lists.blender.org/mailman/listinfo/bf-blender-cvs