diff options
author | Sergey Sharybin <sergey.vfx@gmail.com> | 2016-12-09 15:05:39 +0300 |
---|---|---|
committer | Sergey Sharybin <sergey.vfx@gmail.com> | 2016-12-09 15:05:39 +0300 |
commit | 3bd94b9f45e921186352bed9908f5bb851714d4f (patch) | |
tree | c3fb6442b2911cd6d5d9ff700b07387a74f202dd /source/blender/depsgraph | |
parent | dd58390d71d7bee96bddded9106099086b078f5d (diff) |
Depsgraph: Bone parent should also include armature transform relation
It is required to have world-space bone position, which consists of armature
object transform and local bone transform.
Diffstat (limited to 'source/blender/depsgraph')
-rw-r--r-- | source/blender/depsgraph/intern/builder/deg_builder_relations.cc | 16 |
1 files changed, 14 insertions, 2 deletions
diff --git a/source/blender/depsgraph/intern/builder/deg_builder_relations.cc b/source/blender/depsgraph/intern/builder/deg_builder_relations.cc index d9a21d2b888..b5272d3acf2 100644 --- a/source/blender/depsgraph/intern/builder/deg_builder_relations.cc +++ b/source/blender/depsgraph/intern/builder/deg_builder_relations.cc @@ -528,8 +528,20 @@ void DepsgraphRelationBuilder::build_object_parent(Object *ob) case PARBONE: /* Bone Parent */ { - ComponentKey parent_key(&ob->parent->id, DEPSNODE_TYPE_BONE, ob->parsubstr); - add_relation(parent_key, ob_key, DEPSREL_TYPE_TRANSFORM, "Bone Parent"); + ComponentKey parent_bone_key(&ob->parent->id, + DEPSNODE_TYPE_BONE, + ob->parsubstr); + OperationKey parent_transform_key(&ob->parent->id, + DEPSNODE_TYPE_TRANSFORM, + DEG_OPCODE_TRANSFORM_FINAL); + add_relation(parent_bone_key, + ob_key, + DEPSREL_TYPE_TRANSFORM, + "Bone Parent"); + add_relation(parent_transform_key, + ob_key, + DEPSREL_TYPE_TRANSFORM, + "Armature Parent"); break; } |