Merge branch 'master' into blender2.8
[blender.git] / source / blender / depsgraph / intern / builder / deg_builder_nodes_rig.cc
index 4600bfedf28c7ed3bf764b1aa15f3044b838a310..5ac49f540b109dfa7efe33b4be4d4bf5ee0e62a6 100644 (file)
@@ -50,6 +50,7 @@ extern "C" {
 
 #include "BKE_action.h"
 #include "BKE_armature.h"
+#include "BKE_constraint.h"
 } /* extern "C" */
 
 #include "DEG_depsgraph.h"
@@ -70,7 +71,11 @@ void DepsgraphNodeBuilder::build_pose_constraints(Object *object,
                                                   bPoseChannel *pchan,
                                                   int pchan_index)
 {
-       /* create node for constraint stack */
+       /* Pull indirect dependencies via constraints. */
+       BuilderWalkUserData data;
+       data.builder = this;
+       BKE_constraints_id_loop(&pchan->constraints, constraint_walk, &data);
+       /* Create node for constraint stack. */
        add_operation_node(&object->id, DEG_NODE_TYPE_BONE, pchan->name,
                           function_bind(BKE_pose_constraints_evaluate,
                                         _1,