[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [43236] trunk/blender/intern/cycles/kernel /svm/svm_checker.h: Cycles: small tweak to checker texture, scale rather than add with epsilon,
Brecht Van Lommel
brechtvanlommel at pandora.be
Mon Jan 9 17:57:37 CET 2012
Revision: 43236
http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=43236
Author: blendix
Date: 2012-01-09 16:57:26 +0000 (Mon, 09 Jan 2012)
Log Message:
-----------
Cycles: small tweak to checker texture, scale rather than add with epsilon,
looks a bit better on all sides of a mesh.
Modified Paths:
--------------
trunk/blender/intern/cycles/kernel/svm/svm_checker.h
Modified: trunk/blender/intern/cycles/kernel/svm/svm_checker.h
===================================================================
--- trunk/blender/intern/cycles/kernel/svm/svm_checker.h 2012-01-09 15:17:09 UTC (rev 43235)
+++ trunk/blender/intern/cycles/kernel/svm/svm_checker.h 2012-01-09 16:57:26 UTC (rev 43236)
@@ -24,11 +24,15 @@
{
p *= scale;
- /* 0.00001 because of unit sized stuff */
- int xi = (int)fabsf(floor(0.00001f + p.x));
- int yi = (int)fabsf(floor(0.00001f + p.y));
- int zi = (int)fabsf(floor(0.00001f + p.z));
-
+ /* avoid precision issues on unit coordinates */
+ p.x = (p.x + 0.00001f)*0.9999f;
+ p.y = (p.y + 0.00001f)*0.9999f;
+ p.z = (p.z + 0.00001f)*0.9999f;
+
+ int xi = (int)fabsf(floorf(p.x));
+ int yi = (int)fabsf(floorf(p.y));
+ int zi = (int)fabsf(floorf(p.z));
+
return ((xi % 2 == yi % 2) == (zi % 2))? 1.0f: 0.0f;
}
More information about the Bf-blender-cvs
mailing list