diff options
author | Sergey Sharybin <sergey.vfx@gmail.com> | 2019-01-31 12:40:38 +0300 |
---|---|---|
committer | Sergey Sharybin <sergey.vfx@gmail.com> | 2019-01-31 15:00:11 +0300 |
commit | 9a7ea778b37538b0ff479c7fcbf00cdfe721d7fb (patch) | |
tree | b09839c844b8dce34ad514c2b91e50a6a38c4f53 /source/blender/depsgraph/intern/builder/deg_builder_relations_impl.h | |
parent | 13de53ecc5bea0f49a13dfc560442c2637f9ca37 (diff) |
Fix T61030: Drivers for shape keys not evaluated in correct order
Was happening when value of one shape key was driving property of
another shape key of same datablock.
Solved by making shape key blocks properties more granular.
Diffstat (limited to 'source/blender/depsgraph/intern/builder/deg_builder_relations_impl.h')
-rw-r--r-- | source/blender/depsgraph/intern/builder/deg_builder_relations_impl.h | 27 |
1 files changed, 0 insertions, 27 deletions
diff --git a/source/blender/depsgraph/intern/builder/deg_builder_relations_impl.h b/source/blender/depsgraph/intern/builder/deg_builder_relations_impl.h index 726393f39b9..f5b9a9ed25a 100644 --- a/source/blender/depsgraph/intern/builder/deg_builder_relations_impl.h +++ b/source/blender/depsgraph/intern/builder/deg_builder_relations_impl.h @@ -217,31 +217,4 @@ bool DepsgraphRelationBuilder::is_same_nodetree_node_dependency( return true; } -template <typename KeyFrom, typename KeyTo> -bool DepsgraphRelationBuilder::is_same_shapekey_dependency( - const KeyFrom& key_from, - const KeyTo& key_to) -{ - /* Get operations for requested keys. */ - DepsNode *node_from = get_node(key_from); - DepsNode *node_to = get_node(key_to); - if (node_from == NULL || node_to == NULL) { - return false; - } - OperationDepsNode *op_from = node_from->get_exit_operation(); - OperationDepsNode *op_to = node_to->get_entry_operation(); - if (op_from == NULL || op_to == NULL) { - return false; - } - /* Check if this is actually a shape key datablock. */ - if (GS(op_from->owner->owner->id_orig->name) != ID_KE) { - return false; - } - /* Different key data blocks. */ - if (op_from->owner->owner != op_to->owner->owner) { - return false; - } - return true; -} - } // namespace DEG |