Depsgraph: fix for old problem where dependencies would not get executed

properly on file loading. Some things get preserved on file save/load,
like object matrices and armature poses, but other things need to be remade
like derivedmeshes and displists. The latter were not tagged for recalc on
load causing them to be made on countall or redraw typically, so not in the
right order and dependencies on hidden layer were not done at all.

Now these get tagged for recalc and flags flushed on load. There shouldn't
be much if any slowdown on opening existing files, if there is it should be
fixable.
This commit is contained in:
2010-02-07 10:00:27 +00:00
parent 64d9026144
commit d8c7f743ab
4 changed files with 52 additions and 16 deletions

View File

@@ -6741,14 +6741,14 @@ static void particleSystemModifier_deformVerts(
psmd->totdmvert= psmd->dm->getNumVerts(psmd->dm);
psmd->totdmedge= psmd->dm->getNumEdges(psmd->dm);
psmd->totdmface= psmd->dm->getNumFaces(psmd->dm);
}
}
if(psys){
psmd->flag &= ~eParticleSystemFlag_psys_updated;
particle_system_update(md->scene, ob, psys);
psmd->flag |= eParticleSystemFlag_psys_updated;
psmd->flag &= ~eParticleSystemFlag_DM_changed;
}
if(psys) {
psmd->flag &= ~eParticleSystemFlag_psys_updated;
particle_system_update(md->scene, ob, psys);
psmd->flag |= eParticleSystemFlag_psys_updated;
psmd->flag &= ~eParticleSystemFlag_DM_changed;
}
}
/* disabled particles in editmode for now, until support for proper derivedmesh