diff options
author | Sergey Sharybin <sergey.vfx@gmail.com> | 2018-06-20 12:05:52 +0300 |
---|---|---|
committer | Sergey Sharybin <sergey.vfx@gmail.com> | 2018-06-20 12:05:52 +0300 |
commit | 8763a8fd4bf36e3e8ede5937a63a607ca7fadbba (patch) | |
tree | 0944181ee2b75cb0e24827ea23db5d827911764f /source | |
parent | 570f3e67190c24a1fc87c0aa4f6a3e71c8c773dd (diff) |
Particle edit: Fix missing hair in edit mode for new particle systems
Need to get away from thosae update flags in original datablocks.
Diffstat (limited to 'source')
-rw-r--r-- | source/blender/blenkernel/intern/particle_system.c | 22 |
1 files changed, 12 insertions, 10 deletions
diff --git a/source/blender/blenkernel/intern/particle_system.c b/source/blender/blenkernel/intern/particle_system.c index 314a58647a9..1c50e85668d 100644 --- a/source/blender/blenkernel/intern/particle_system.c +++ b/source/blender/blenkernel/intern/particle_system.c @@ -4221,16 +4221,6 @@ void particle_system_update(struct Depsgraph *depsgraph, Scene *scene, Object *o if (!psys_check_enabled(ob, psys, use_render_params)) return; - if (DEG_is_active(depsgraph)) { - if (psys->orig_psys != NULL && - psys->orig_psys->edit != NULL && - psys->orig_psys->edit->psys == psys_orig_get(psys)) - { - psys->orig_psys->edit->psys_eval = psys; - psys->orig_psys->edit->psmd_eval = psmd; - } - } - cfra = DEG_get_ctime(depsgraph); sim.depsgraph = depsgraph; @@ -4385,6 +4375,18 @@ void particle_system_update(struct Depsgraph *depsgraph, Scene *scene, Object *o psys_orig->edit->flags |= PT_CACHE_EDIT_UPDATE_PARTICLE_FROM_EVAL; } + if (DEG_is_active(depsgraph)) { + if (psys_orig != psys) { + if (psys_orig->edit != NULL && + psys_orig->edit->psys == psys_orig) + { + psys_orig->edit->psys_eval = psys; + psys_orig->edit->psmd_eval = psmd; + } + psys_orig->flag = psys->flag; + } + } + psys->cfra = cfra; psys->recalc = 0; |