diff options
Diffstat (limited to 'source/blender/modifiers/intern')
-rw-r--r-- | source/blender/modifiers/intern/MOD_particlesystem.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/source/blender/modifiers/intern/MOD_particlesystem.c b/source/blender/modifiers/intern/MOD_particlesystem.c index f2b580aca9a..d7e61b7210e 100644 --- a/source/blender/modifiers/intern/MOD_particlesystem.c +++ b/source/blender/modifiers/intern/MOD_particlesystem.c @@ -154,6 +154,10 @@ static void deformVerts(ModifierData *md, Object *ob, psmd->dm->needsFree = 1; psmd->dm->release(psmd->dm); } + else if(psmd->flag & eParticleSystemFlag_file_loaded) { + /* in file read dm just wasn't saved in file so no need to reset everything */ + psmd->flag &= ~eParticleSystemFlag_file_loaded; + } else { /* no dm before, so recalc particles fully */ psys->recalc |= PSYS_RECALC_RESET; @@ -176,7 +180,6 @@ static void deformVerts(ModifierData *md, Object *ob, if(psmd->dm->getNumVerts(psmd->dm)!=psmd->totdmvert || psmd->dm->getNumEdges(psmd->dm)!=psmd->totdmedge || psmd->dm->getNumFaces(psmd->dm)!=psmd->totdmface){ - /* in file read dm hasn't really changed but just wasn't saved in file */ psys->recalc |= PSYS_RECALC_RESET; |