[Bf-blender-cvs] [f23ef4db630] sculpt-mode-features: odd transform jumps should be fixed now
Martin Felke
noreply at git.blender.org
Tue Apr 9 18:41:32 CEST 2019
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;
}
More information about the Bf-blender-cvs
mailing list