[Bf-blender-cvs] [d7a9e5a] fracture_modifier: fix: load inner vertex group now directly after blend has been loaded (no additional refracture necessary)

Martin Felke noreply at git.blender.org
Mon Dec 15 20:52:08 CET 2014


Commit: d7a9e5ac948ded973a54ce37ffe99ef69a9decef
Author: Martin Felke
Date:   Mon Dec 15 20:51:52 2014 +0100
Branches: fracture_modifier
https://developer.blender.org/rBd7a9e5ac948ded973a54ce37ffe99ef69a9decef

fix: load inner vertex group now directly after blend has been loaded (no additional refracture necessary)

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

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

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

diff --git a/source/blender/modifiers/intern/MOD_fracture.c b/source/blender/modifiers/intern/MOD_fracture.c
index b612dc5..49a767e 100644
--- a/source/blender/modifiers/intern/MOD_fracture.c
+++ b/source/blender/modifiers/intern/MOD_fracture.c
@@ -2460,6 +2460,17 @@ static DerivedMesh *doSimulate(FractureModifierData *fmd, Object *ob, DerivedMes
 			fmd->visible_mesh_cached = createCache(fmd, ob, dm);
 			printf("Building cached DerivedMesh done, %g\n", PIL_check_seconds_timer() - start);
 		}
+		else
+		{
+			/* fallback, this branch is executed when the modifier data has been loaded via readfile.c,
+			 * although this might not be directly visible due to complex logic */
+
+			MDeformVert* dvert = NULL;
+			if (fmd->visible_mesh_cached)
+				dvert = fmd->visible_mesh_cached->getVertDataArray(fmd->visible_mesh_cached, CD_MDEFORMVERT);
+			if (dvert->dw == NULL)
+				fill_vgroup(fmd, fmd->visible_mesh_cached, dvert, ob);
+		}
 
 		if (fmd->refresh_images && fmd->visible_mesh_cached) {
 			/* need to ensure images are correct after loading... */
@@ -2480,6 +2491,7 @@ static DerivedMesh *doSimulate(FractureModifierData *fmd, Object *ob, DerivedMes
 	}
 
 	if (fmd->refresh_constraints) {
+
 		start = PIL_check_seconds_timer();
 
 		if ((fmd->visible_mesh != NULL || fmd->visible_mesh_cached != NULL)  && (fmd->use_constraints)) {




More information about the Bf-blender-cvs mailing list