[Bf-blender-cvs] [de7b757] master: Fix T46030: Strange behavior of Cycles Brick Texture

Sergey Sharybin noreply at git.blender.org
Fri Sep 18 14:32:31 CEST 2015


Commit: de7b7572c258c811ad0165f199d59dcef3bafad3
Author: Sergey Sharybin
Date:   Fri Sep 18 17:28:40 2015 +0500
Branches: master
https://developer.blender.org/rBde7b7572c258c811ad0165f199d59dcef3bafad3

Fix T46030: Strange behavior of Cycles Brick Texture

Added some extra seed to the hash, so it's now less likely to give repetitive
patters at values around zero.

This will change distribution of bricks for existing files. but it's something
inevitable.

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

M	intern/cycles/kernel/shaders/node_brick_texture.osl
M	intern/cycles/kernel/svm/svm_brick.h

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

diff --git a/intern/cycles/kernel/shaders/node_brick_texture.osl b/intern/cycles/kernel/shaders/node_brick_texture.osl
index e26e8db..35e0117 100644
--- a/intern/cycles/kernel/shaders/node_brick_texture.osl
+++ b/intern/cycles/kernel/shaders/node_brick_texture.osl
@@ -22,6 +22,7 @@
 float brick_noise(int n) /* fast integer noise */
 {
 	int nn;
+	n = (n + 1013) & 2147483647;
 	n = (n >> 13) ^ n;
 	nn = (n * (n * n * 60493 + 19990303) + 1376312589) & 2147483647;
 	return 0.5 * ((float)nn / 1073741824.0);
diff --git a/intern/cycles/kernel/svm/svm_brick.h b/intern/cycles/kernel/svm/svm_brick.h
index fcf8f47..9b0cf5a 100644
--- a/intern/cycles/kernel/svm/svm_brick.h
+++ b/intern/cycles/kernel/svm/svm_brick.h
@@ -21,6 +21,7 @@ CCL_NAMESPACE_BEGIN
 ccl_device_noinline float brick_noise(int n) /* fast integer noise */
 {
 	int nn;
+	n = (n + 1013) & 0x7fffffff;
 	n = (n >> 13) ^ n;
 	nn = (n * (n * n * 60493 + 19990303) + 1376312589) & 0x7fffffff;
 	return 0.5f * ((float)nn / 1073741824.0f);




More information about the Bf-blender-cvs mailing list