[Bf-blender-cvs] [4ddc7e8d1b2] master: Fix T66919: Force field does not affect particles

Sergey Sharybin noreply at git.blender.org
Wed Jul 17 16:53:27 CEST 2019


Commit: 4ddc7e8d1b2c22463d4d181d8bb3bb9bb17b1b35
Author: Sergey Sharybin
Date:   Wed Jul 17 11:40:02 2019 +0200
Branches: master
https://developer.blender.org/rB4ddc7e8d1b2c22463d4d181d8bb3bb9bb17b1b35

Fix T66919: Force field does not affect particles

Reviewers: brecht

Reviewed By: brecht

Maniphest Tasks: T66919

Differential Revision: https://developer.blender.org/D5275

===================================================================

M	source/blender/depsgraph/intern/builder/deg_builder_relations.cc

===================================================================

diff --git a/source/blender/depsgraph/intern/builder/deg_builder_relations.cc b/source/blender/depsgraph/intern/builder/deg_builder_relations.cc
index c59fb5f2a38..86cbb330170 100644
--- a/source/blender/depsgraph/intern/builder/deg_builder_relations.cc
+++ b/source/blender/depsgraph/intern/builder/deg_builder_relations.cc
@@ -379,6 +379,14 @@ void DepsgraphRelationBuilder::add_particle_forcefield_relations(const Operation
 {
   ListBase *relations = build_effector_relations(graph_, eff->group);
 
+  /* Make sure physics effects like wind are properly re-evaluating the modifier stack. */
+  if (!BLI_listbase_is_empty(relations)) {
+    TimeSourceKey time_src_key;
+    ComponentKey geometry_key(&object->id, NodeType::GEOMETRY);
+    add_relation(
+        time_src_key, geometry_key, "Effector Time -> Particle", RELATION_CHECK_BEFORE_ADD);
+  }
+
   LISTBASE_FOREACH (EffectorRelation *, relation, relations) {
     if (relation->ob != object) {
       /* Relation to forcefield object, optionally including geometry. */



More information about the Bf-blender-cvs mailing list