diff options
author | Janne Karhu <jhkarh@gmail.com> | 2007-11-30 01:04:07 +0300 |
---|---|---|
committer | Janne Karhu <jhkarh@gmail.com> | 2007-11-30 01:04:07 +0300 |
commit | e893c9d739ed36a2d0aba50f231dba31cdcd2132 (patch) | |
tree | 0ace141026a3c1f677a6531353cb4056a58e5199 /source/blender/blenkernel | |
parent | 9ff9a5cdca5c834e05439699667f64524f957ccb (diff) |
Fix for bug #7846
Diffstat (limited to 'source/blender/blenkernel')
-rw-r--r-- | source/blender/blenkernel/intern/modifier.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/source/blender/blenkernel/intern/modifier.c b/source/blender/blenkernel/intern/modifier.c index 941ce2eea1c..6fa4fb6b3cc 100644 --- a/source/blender/blenkernel/intern/modifier.c +++ b/source/blender/blenkernel/intern/modifier.c @@ -5507,7 +5507,7 @@ static void explodeModifier_createFacepa(ExplodeModifierData *emd, /* make tree of emitter locations */ tree=BLI_kdtree_new(totpart); for(p=0,pa=psys->particles; p<totpart; p++,pa++){ - psys_particle_on_dm(ob,dm,psys->part->from,pa->num,pa->num_dmcache,pa->fuv,pa->foffset,co,0,0,0); + psys_particle_on_dm(ob,psmd->dm,psys->part->from,pa->num,pa->num_dmcache,pa->fuv,pa->foffset,co,0,0,0); BLI_kdtree_insert(tree, p, co, NULL); } BLI_kdtree_balance(tree); @@ -6194,7 +6194,10 @@ static DerivedMesh * explodeModifier_applyModifier( if(psys->part==0 || psys->particles==0) return derivedData; /* 1. find faces to be exploded if needed */ - if(emd->facepa==0 || psmd->flag&eParticleSystemFlag_Pars || emd->flag&eExplodeFlag_CalcFaces){ + if(emd->facepa==0 + || psmd->flag&eParticleSystemFlag_Pars + || emd->flag&eExplodeFlag_CalcFaces + || MEM_allocN_len(emd->facepa)/sizeof(int) != dm->getNumFaces(dm)){ if(psmd->flag & eParticleSystemFlag_Pars) psmd->flag &= ~eParticleSystemFlag_Pars; |