Commit: f23ef4db630f232a561709c9a0441354cae5c35d
Author: Martin Felke
Date:   Tue Apr 9 18:39:24 2019 +0200
Branches: sculpt-mode-features
https://developer.blender.org/rBf23ef4db630f232a561709c9a0441354cae5c35d

odd transform jumps should be fixed now

instead of restoring the meshtransform on the original, a copy is made

===================================================================

M       source/blender/modifiers/intern/MOD_remesh.c

===================================================================

diff --git a/source/blender/modifiers/intern/MOD_remesh.c 
b/source/blender/modifiers/intern/MOD_remesh.c
index a263db9322c..5d6d7296147 100644
--- a/source/blender/modifiers/intern/MOD_remesh.c
+++ b/source/blender/modifiers/intern/MOD_remesh.c
@@ -220,7 +220,11 @@ static Mesh* voxel_remesh(RemeshModifierData *rmd, Mesh* 
mesh, struct OpenVDBLev
 
 static struct OpenVDBLevelSet* csgOperation(struct OpenVDBLevelSet* level_set, 
CSGVolume_Object* vcob, Object* ob)
 {
-       Mesh *me = BKE_object_get_final_mesh(vcob->object);
+       Mesh *me_orig = BKE_object_get_final_mesh(vcob->object);
+       Mesh *me = BKE_mesh_new_nomain(me_orig->totvert, me_orig->totedge, 
me_orig->totface, me_orig->totloop, me_orig->totpoly);
+
+       BKE_mesh_nomain_to_mesh(me_orig, me, vcob->object, &CD_MASK_MESH, 
false);
+
        float imat[4][4];
        float omat[4][4];
 
@@ -240,13 +244,7 @@ static struct OpenVDBLevelSet* csgOperation(struct 
OpenVDBLevelSet* level_set, C
 
        OpenVDBLevelSet_free(level_setB);
        OpenVDBTransform_free(xform);
-
-       //restore transform
-       invert_m4_m4(imat, omat);
-       for (int i = 0; i < me->totvert; i++)
-       {
-               mul_m4_v3(imat, me->mvert[i].co);
-       }
+       BKE_mesh_free(me);
 
        return level_set;
 }

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

Reply via email to