[Bf-blender-cvs] [f236797eee8] temp-fracture-modifier-2.8: fix incorrectly flipped carve result
Martin Felke
noreply at git.blender.org
Sat Mar 9 21:10:12 CET 2019
Commit: f236797eee873d25add884020f55702963ba3b19
Author: Martin Felke
Date: Sat Mar 9 21:09:52 2019 +0100
Branches: temp-fracture-modifier-2.8
https://developer.blender.org/rBf236797eee873d25add884020f55702963ba3b19
fix incorrectly flipped carve result
===================================================================
M source/blender/blenkernel/intern/boolean.c
===================================================================
diff --git a/source/blender/blenkernel/intern/boolean.c b/source/blender/blenkernel/intern/boolean.c
index 06d60b16520..679f6f9a481 100644
--- a/source/blender/blenkernel/intern/boolean.c
+++ b/source/blender/blenkernel/intern/boolean.c
@@ -152,31 +152,17 @@ Mesh *BKE_boolean_operation(Mesh *mesh, struct Object *ob,
DerivedMesh *dm_other = CDDM_from_mesh(mesh_other);
DerivedMesh *dm_result = NULL;
- dm_result = NewBooleanDerivedMesh(dm, object, dm_other, other,
+ dm_result = NewBooleanDerivedMesh(dm_other, other, dm, object,
1 + op_type);
- if (dm_result && dm_result != dm)
- {
- float imat[4][4];
- float omat[4][4];
+ dm->needsFree = 1;
+ dm->release(dm);
+ if (dm_result && dm_result != dm_other)
+ {
result = BKE_id_new_nomain(ID_ME, NULL);
DM_to_mesh(dm_result, result, object, CD_MASK_MESH, true);
- //correct transform
- invert_m4_m4(imat, object->obmat);
- mul_m4_m4m4(omat, imat, other->obmat);
-
- const int mverts_len = result->totvert;
- MVert *mv = result->mvert;
-
- for (int i = 0; i < mverts_len; i++, mv++) {
- mul_m4_v3(omat, mv->co);
- }
-
- dm->needsFree = 1;
- dm->release(dm);
-
dm_other->needsFree = 1;
dm_other->release(dm_other);
}
More information about the Bf-blender-cvs
mailing list