diff options
Diffstat (limited to 'source/blender/blenkernel/intern/shrinkwrap.c')
-rw-r--r-- | source/blender/blenkernel/intern/shrinkwrap.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/source/blender/blenkernel/intern/shrinkwrap.c b/source/blender/blenkernel/intern/shrinkwrap.c index 96f2b8c1095..0c9ee61ca19 100644 --- a/source/blender/blenkernel/intern/shrinkwrap.c +++ b/source/blender/blenkernel/intern/shrinkwrap.c @@ -1548,7 +1548,11 @@ void BKE_shrinkwrap_remesh_target_project(Mesh *src_me, Mesh *target_me, Object ssmd.shrinkMode = MOD_SHRINKWRAP_ON_SURFACE; ssmd.shrinkOpts = MOD_SHRINKWRAP_PROJECT_ALLOW_NEG_DIR | MOD_SHRINKWRAP_PROJECT_ALLOW_POS_DIR; ssmd.keepDist = 0.0f; - ssmd.projLimit = target_me->remesh_voxel_size; + + /* Tolerance value to prevent artifacts on sharp edges of a mesh. + * This constant and based on experimenting with different values. */ + const float projLimitTolerance = 5.0f; + ssmd.projLimit = target_me->remesh_voxel_size * projLimitTolerance; float(*vertexCos)[3] = BKE_mesh_vert_coords_alloc(src_me, &totvert); |