diff options
author | Janne Karhu <jhkarh@gmail.com> | 2010-09-03 10:18:23 +0400 |
---|---|---|
committer | Janne Karhu <jhkarh@gmail.com> | 2010-09-03 10:18:23 +0400 |
commit | 870469ec0e49f47b61fe9bda27c4b11fdd955d6b (patch) | |
tree | a8cee951833c30da3a810f6d8cdafc5fc634e08f /source/blender/blenkernel/intern/anim.c | |
parent | 9659d47d8bc4d19a6d391c604696a2a031838535 (diff) |
Fix for [#19950] Object Particles and texture controlled density
* The hair strands that were cut based on the texture weren't properly checked for in the duplication code.
Diffstat (limited to 'source/blender/blenkernel/intern/anim.c')
-rw-r--r-- | source/blender/blenkernel/intern/anim.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/source/blender/blenkernel/intern/anim.c b/source/blender/blenkernel/intern/anim.c index e27e3b2cd3f..4b9ffb1e374 100644 --- a/source/blender/blenkernel/intern/anim.c +++ b/source/blender/blenkernel/intern/anim.c @@ -1285,6 +1285,12 @@ static void new_particle_duplilist(ListBase *lb, ID *id, Scene *scene, Object *p size = psys_get_child_size(psys, cpa, ctime, 0); } + /* some hair paths might be non-existent so they can't be used for duplication */ + if(hair && + ((a < totpart && psys->pathcache[a]->steps < 0) || + (a >= totpart && psys->childcache[a-totpart]->steps < 0))) + continue; + if(part->ren_as==PART_DRAW_GR) { /* for groups, pick the object based on settings */ if(part->draw&PART_DRAW_RAND_GR) |