[Bf-blender-cvs] [5723aa8c02] master: Cycles: Fix wrong pointiness caused by precision issues
Sergey Sharybin
noreply at git.blender.org
Wed Feb 15 12:44:44 CET 2017
Commit: 5723aa8c0254f553aa8057006589af434317652f
Author: Sergey Sharybin
Date: Wed Feb 15 12:39:06 2017 +0100
Branches: master
https://developer.blender.org/rB5723aa8c0254f553aa8057006589af434317652f
Cycles: Fix wrong pointiness caused by precision issues
===================================================================
M intern/cycles/blender/blender_mesh.cpp
===================================================================
diff --git a/intern/cycles/blender/blender_mesh.cpp b/intern/cycles/blender/blender_mesh.cpp
index e269be6179..5032c92530 100644
--- a/intern/cycles/blender/blender_mesh.cpp
+++ b/intern/cycles/blender/blender_mesh.cpp
@@ -589,12 +589,12 @@ static void attr_create_pointiness(Scene *scene,
const float3 &other_vert_co = mesh->verts[other_vert_index];
/* We are too far away now, we wouldn't have duplicate. */
if ((other_vert_co.x + other_vert_co.y + other_vert_co.z) -
- (vert_co.x + vert_co.y + vert_co.z) > 0.0f)
+ (vert_co.x + vert_co.y + vert_co.z) > 3 * FLT_EPSILON)
{
break;
}
/* Found duplicate. */
- if(other_vert_co == vert_co) {
+ if(len_squared(other_vert_co - vert_co) < FLT_EPSILON) {
found = true;
vert_orig_index[vert_index] = other_vert_index;
break;
More information about the Bf-blender-cvs
mailing list