diff options
author | Brecht Van Lommel <brechtvanlommel@gmail.com> | 2019-01-28 19:52:46 +0300 |
---|---|---|
committer | Brecht Van Lommel <brechtvanlommel@gmail.com> | 2019-01-31 14:03:05 +0300 |
commit | 7400aa7e595063510ce9f29fa1b02ebd3f9296e2 (patch) | |
tree | d0fc86bfc15cf187b3a69b720e9a715489494f8a /source/blender/blenkernel/intern/effect.c | |
parent | 3e072da45bee1ac5368b83c84839d2ccdde6e514 (diff) |
Depsgraph: remove features incompatible with new system.
Some features are incompatible with multithreading and reliable evaluation
of dependencies. We are now removing them as part of a bigger cleanup to
fix bugs in keyframing and invalid animation evaluations.
* Dupliframes have been removed. This was a hack added before there were
more powerful features like the array modifier.
* Slow parent has been removed, never worked in 2.8. It was always
unreliable for use in production due to depending on whatever frame was
previously evaluated, which was not always the previous frame.
* Particle instanced objects used to have their transform evaluated at
the particle time. Now it always gets the current time transform.
* Boids can no longer do predictive avoidance of force field objects,
but still for other particles.
Differential Revision: https://developer.blender.org/D4274
Diffstat (limited to 'source/blender/blenkernel/intern/effect.c')
-rw-r--r-- | source/blender/blenkernel/intern/effect.c | 14 |
1 files changed, 1 insertions, 13 deletions
diff --git a/source/blender/blenkernel/intern/effect.c b/source/blender/blenkernel/intern/effect.c index 453d1e70309..e98de4c92f3 100644 --- a/source/blender/blenkernel/intern/effect.c +++ b/source/blender/blenkernel/intern/effect.c @@ -183,16 +183,6 @@ static void precalculate_effector(struct Depsgraph *depsgraph, EffectorCache *ef } else if (eff->psys) psys_update_particle_tree(eff->psys, ctime); - - /* Store object velocity */ - if (eff->ob) { - float old_vel[3]; - - BKE_object_where_is_calc_time(depsgraph, eff->scene, eff->ob, cfra - 1.0f); - copy_v3_v3(old_vel, eff->ob->obmat[3]); - BKE_object_where_is_calc_time(depsgraph, eff->scene, eff->ob, cfra); - sub_v3_v3v3(eff->velocity, eff->ob->obmat[3], old_vel); - } } static void add_effector_relation(ListBase *relations, Object *ob, ParticleSystem *psys, PartDeflect *pd) @@ -690,9 +680,7 @@ int get_effector_data(EffectorCache *eff, EffectorData *efd, EffectedPoint *poin copy_v3_v3(efd->loc, ob->obmat[3]); } - if (real_velocity) { - copy_v3_v3(efd->vel, eff->velocity); - } + zero_v3(efd->vel); efd->size = 0.0f; ret = 1; |