From f172cea484c1f3b4083e7e1574bd33a2c6873f93 Mon Sep 17 00:00:00 2001 From: mano-wii Date: Thu, 24 Jan 2019 10:32:28 -0200 Subject: Fix T59423: Mesh deform modifier bind bug causing spiky deformations. Same as rBac316a6526c7. (I should have commited in 2.7 first and then merged in 2.8). --- source/blender/editors/armature/meshlaplacian.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) (limited to 'source') diff --git a/source/blender/editors/armature/meshlaplacian.c b/source/blender/editors/armature/meshlaplacian.c index 4e31fcc7a11..b42ec77c052 100644 --- a/source/blender/editors/armature/meshlaplacian.c +++ b/source/blender/editors/armature/meshlaplacian.c @@ -898,9 +898,10 @@ static void harmonic_ray_callback(void *userdata, int index, const BVHTreeRay *r face[1] = mdb->cagecos[mloop[lt->tri[1]].v]; face[2] = mdb->cagecos[mloop[lt->tri[2]].v]; - if (!isect_ray_tri_watertight_v3( - ray->origin, ray->isect_precalc, UNPACK3(face), &dist, NULL)) - { + bool isect_ray_tri = isect_ray_tri_watertight_v3( + ray->origin, ray->isect_precalc, UNPACK3(face), &dist, NULL); + + if (!isect_ray_tri || dist > isec->vec_length) { return; } -- cgit v1.2.3