Fix for invalid particle pointer access in mixed particle/child loop.

This commit is contained in:
Lukas Tönne
2014-11-20 17:15:16 +01:00
parent 790b931956
commit c3c19509b3

View File

@@ -331,6 +331,12 @@ static DerivedMesh *applyModifier(ModifierData *md, Object *ob,
float hairmat[4][4];
float mat[3][3];
if (first_particle + p < psys->totpart)
pa = psys->particles + first_particle + p;
else {
ChildParticle *cpa = psys->child + p;
pa = psys->particles + cpa->parent;
}
psys_mat_hair_to_global(sim.ob, sim.psmd->dm, sim.psys->part->from, pa, hairmat);
copy_m3_m4(mat, hairmat);
/* to quaternion */