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);
                                }

_______________________________________________
Bf-blender-cvs mailing list
[email protected]
https://lists.blender.org/mailman/listinfo/bf-blender-cvs

Reply via email to