[Bf-blender-cvs] [9c190dea4c0] blender-v2.82-release: Fix solidify complex fixed thickness on flipped normal boundary
Henrik Dick
noreply at git.blender.org
Wed Jan 29 04:32:53 CET 2020
Commit: 9c190dea4c056a80edde885da3756b889527a8b4
Author: Henrik Dick
Date: Wed Jan 29 14:28:03 2020 +1100
Branches: blender-v2.82-release
https://developer.blender.org/rB9c190dea4c056a80edde885da3756b889527a8b4
Fix solidify complex fixed thickness on flipped normal boundary
Fixed thickness with zero offset gave uneven results for complex
solidify cases (3+ faces sharing an edge).
See D6643 for steps to redo the error.
===================================================================
M source/blender/modifiers/intern/MOD_solidify_nonmanifold.c
===================================================================
diff --git a/source/blender/modifiers/intern/MOD_solidify_nonmanifold.c b/source/blender/modifiers/intern/MOD_solidify_nonmanifold.c
index 144ba25c8fa..799c1c966a3 100644
--- a/source/blender/modifiers/intern/MOD_solidify_nonmanifold.c
+++ b/source/blender/modifiers/intern/MOD_solidify_nonmanifold.c
@@ -1407,7 +1407,7 @@ Mesh *MOD_solidify_nonmanifold_applyModifier(ModifierData *md,
disable_boundary_fix = true;
}
}
- /* Simple/Even Method. */
+ /* Fixed/Even Method. */
else {
float total_angle = 0;
float total_angle_back = 0;
@@ -1520,6 +1520,9 @@ Mesh *MOD_solidify_nonmanifold_applyModifier(ModifierData *md,
if (has_back && total_angle_back > FLT_EPSILON) {
mul_v3_fl(nor_back, 1.0f / total_angle_back);
add_v3_v3(nor, nor_back);
+ if (has_front && total_angle > FLT_EPSILON) {
+ mul_v3_fl(nor, 0.5f);
+ }
}
}
/* Set move_nor for boundary fix. */
More information about the Bf-blender-cvs
mailing list