diff options
author | Jacques Lucke <jacques@blender.org> | 2022-03-07 14:37:13 +0300 |
---|---|---|
committer | Jacques Lucke <jacques@blender.org> | 2022-03-07 14:37:13 +0300 |
commit | 00f6e4c99051b6182d9703891278e180366d96c6 (patch) | |
tree | c525074cac1838656cbc78f7e43bb9f46c824914 /source/blender/depsgraph | |
parent | 0e51defcf42e1cb231d36da9ecc2cc0fbe6ae505 (diff) |
Fix T96180: driver in node tree not updating in real time
Differential Revision: https://developer.blender.org/D14260
Diffstat (limited to 'source/blender/depsgraph')
-rw-r--r-- | source/blender/depsgraph/intern/builder/deg_builder_relations.cc | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/source/blender/depsgraph/intern/builder/deg_builder_relations.cc b/source/blender/depsgraph/intern/builder/deg_builder_relations.cc index d63d1bafb3e..3b2e0f92700 100644 --- a/source/blender/depsgraph/intern/builder/deg_builder_relations.cc +++ b/source/blender/depsgraph/intern/builder/deg_builder_relations.cc @@ -1646,6 +1646,14 @@ void DepsgraphRelationBuilder::build_driver_data(ID *id, FCurve *fcu) add_relation(property_exit_key, parameters_key, "Driven Property -> Properties"); } } + + /* Assume drivers on a node tree affect the evaluated output of the node tree. In theory we could + * check if the driven value actually affects the output, i.e. if it drives a node that is linked + * to the output. */ + if (GS(id_ptr->name) == ID_NT) { + ComponentKey ntree_output_key(id_ptr, NodeType::NTREE_OUTPUT); + add_relation(driver_key, ntree_output_key, "Drivers -> NTree Output"); + } } void DepsgraphRelationBuilder::build_driver_variables(ID *id, FCurve *fcu) |