diff options
author | Sergey Sharybin <sergey.vfx@gmail.com> | 2017-12-04 16:08:53 +0300 |
---|---|---|
committer | Sergey Sharybin <sergey.vfx@gmail.com> | 2017-12-06 12:21:33 +0300 |
commit | f8fd8b0744104877a579ab4b603e2a8fb596e503 (patch) | |
tree | 6d92f84985642d9112a9923c19a08373dba3c051 | |
parent | 235a68d8f355104c4f4bb30b3c58cf35e7bfc75d (diff) |
Depsgraph: Use generic function for shape key driver target
-rw-r--r-- | source/blender/depsgraph/intern/builder/deg_builder_relations.cc | 8 | ||||
-rw-r--r-- | source/blender/depsgraph/intern/depsgraph.cc | 2 |
2 files changed, 3 insertions, 7 deletions
diff --git a/source/blender/depsgraph/intern/builder/deg_builder_relations.cc b/source/blender/depsgraph/intern/builder/deg_builder_relations.cc index 2755357e11b..24894663920 100644 --- a/source/blender/depsgraph/intern/builder/deg_builder_relations.cc +++ b/source/blender/depsgraph/intern/builder/deg_builder_relations.cc @@ -1022,12 +1022,8 @@ void DepsgraphRelationBuilder::build_driver(ID *id, FCurve *fcu) add_relation(driver_key, target_key, "Driver -> Target"); } else if (GS(id->name) == ID_KE && strstr(rna_path, "key_blocks[")) { - /* Shape key driver - hook into the base geometry operation. */ - // XXX: double check where this points - Key *shape_key = (Key *)id; - - ComponentKey geometry_key(shape_key->from, DEG_NODE_TYPE_GEOMETRY); - add_relation(driver_key, geometry_key, "Driver -> ShapeKey Geom"); + RNAPathKey target_key(id, rna_path); + add_relation(driver_key, target_key, "Driver -> Target"); } else if (strstr(rna_path, "key_blocks[")) { ComponentKey geometry_key(id, DEG_NODE_TYPE_GEOMETRY); diff --git a/source/blender/depsgraph/intern/depsgraph.cc b/source/blender/depsgraph/intern/depsgraph.cc index ffdd0004727..a1251a4f425 100644 --- a/source/blender/depsgraph/intern/depsgraph.cc +++ b/source/blender/depsgraph/intern/depsgraph.cc @@ -202,7 +202,7 @@ static bool pointer_to_component_node_criteria( * owns it. */ *id = key->from; - *type = DEG_NODE_TYPE_PARAMETERS; + *type = DEG_NODE_TYPE_GEOMETRY; return true; } else if (RNA_struct_is_a(ptr->type, &RNA_Sequence)) { |