[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