diff options
author | Sergey Sharybin <sergey.vfx@gmail.com> | 2018-05-04 13:49:28 +0300 |
---|---|---|
committer | Sergey Sharybin <sergey.vfx@gmail.com> | 2018-05-04 13:49:48 +0300 |
commit | fa11dc673074462e4cf24bf7aeb647cab07bd820 (patch) | |
tree | d984ecc7d23de19c7f0bda7467f36f4b1438d0fb /source/blender/depsgraph/intern/builder/deg_builder_relations_rig.cc | |
parent | b886cdf81d94edb62cac73578fa8ab9ede623452 (diff) |
Depsgraph: Fix extra operations and relations created for shared armatures
Diffstat (limited to 'source/blender/depsgraph/intern/builder/deg_builder_relations_rig.cc')
-rw-r--r-- | source/blender/depsgraph/intern/builder/deg_builder_relations_rig.cc | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/source/blender/depsgraph/intern/builder/deg_builder_relations_rig.cc b/source/blender/depsgraph/intern/builder/deg_builder_relations_rig.cc index 2eee1671795..43df6d2a94b 100644 --- a/source/blender/depsgraph/intern/builder/deg_builder_relations_rig.cc +++ b/source/blender/depsgraph/intern/builder/deg_builder_relations_rig.cc @@ -316,11 +316,13 @@ void DepsgraphRelationBuilder::build_rig(Object *object) add_relation(init_ik_key, flush_key, "Pose Init IK -> Pose Cleanup"); /* Make sure pose is up-to-date with armature updates. */ - OperationKey armature_key(&arm->id, - DEG_NODE_TYPE_PARAMETERS, - DEG_OPCODE_PLACEHOLDER, - "Armature Eval"); - add_relation(armature_key, init_key, "Data dependency"); + if (!built_map_.checkIsBuiltAndTag(arm)) { + OperationKey armature_key(&arm->id, + DEG_NODE_TYPE_PARAMETERS, + DEG_OPCODE_PLACEHOLDER, + "Armature Eval"); + add_relation(armature_key, init_key, "Data dependency"); + } /* IK Solvers... * - These require separate processing steps are pose-level |