[Bf-blender-cvs] [b6d9cbe] master: Cycles: Fix bug in CMJ pattern when number of samples is 1

Sergey Sharybin noreply at git.blender.org
Wed Feb 24 14:31:31 CET 2016


Commit: b6d9cbe65467a55b0e2ac5c8b35a7ebbb08e5f0a
Author: Sergey Sharybin
Date:   Wed Feb 24 14:23:45 2016 +0100
Branches: master
https://developer.blender.org/rBb6d9cbe65467a55b0e2ac5c8b35a7ebbb08e5f0a

Cycles: Fix bug in CMJ pattern when number of samples is 1

It was wrongly considering 1 is a power of 2. While it is a correct thing
(1 == 2^0) it's not what the math in some later formulas expects.

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

M	intern/cycles/kernel/kernel_jitter.h

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

diff --git a/intern/cycles/kernel/kernel_jitter.h b/intern/cycles/kernel/kernel_jitter.h
index 107f21f..a98881b 100644
--- a/intern/cycles/kernel/kernel_jitter.h
+++ b/intern/cycles/kernel/kernel_jitter.h
@@ -26,7 +26,7 @@ CCL_NAMESPACE_BEGIN
 
 ccl_device_inline bool cmj_is_pow2(int i)
 {
-	return (i & (i - 1)) == 0;
+	return (i > 1) && ((i & (i - 1)) == 0);
 }
 
 ccl_device_inline int cmj_fast_mod_pow2(int a, int b)




More information about the Bf-blender-cvs mailing list