diff options
author | Sergey Sharybin <sergey.vfx@gmail.com> | 2016-02-04 23:39:42 +0300 |
---|---|---|
committer | Sergey Sharybin <sergey.vfx@gmail.com> | 2016-03-02 15:58:34 +0300 |
commit | 83824947ba40c31a480819072b6f0fb2e7029a59 (patch) | |
tree | db44a1a03247846ba42043ef1691f59f69bddac8 /source/blender/editors/include/ED_node.h | |
parent | 0d12e086f5dda74d43e3a2d011bfc848c95136de (diff) |
Avoid node tree update tag when changed nodes which are not affecting result
This was we don't have re-compo or viewport re-rendering happening when changing
nodes which are not connected to the output at all (for example when adding new
nodes or changing settings for unconnected nodes).
Only basic operations are covered for now. checks could be added to more tools
when needed.
Currently it's not fully optimal implementation, but seems to work fast enough.
Don't see reliable alternative to that -- keeping tag in the node wouldn't work
because of the node groups (which are probably already broken, but should be
easy to solve with current approach). So guess it's more matter of optimizing
path search from a node to output.
Before processing forward let's check whether it's indeed something we want
and whether the approach is indeed not fully bad.
Reviewers: campbellbarton, mont29
Subscribers: sebastian_k
Differential Revision: https://developer.blender.org/D1765
Diffstat (limited to 'source/blender/editors/include/ED_node.h')
-rw-r--r-- | source/blender/editors/include/ED_node.h | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/source/blender/editors/include/ED_node.h b/source/blender/editors/include/ED_node.h index 1445308c485..7fe9a0c320c 100644 --- a/source/blender/editors/include/ED_node.h +++ b/source/blender/editors/include/ED_node.h @@ -80,7 +80,7 @@ void ED_node_draw_snap(struct View2D *v2d, const float cent[2], float size, Node /* node_draw.c */ void ED_node_tree_update(const struct bContext *C); void ED_node_tag_update_id(struct ID *id); -void ED_node_tag_update_nodetree(struct Main *bmain, struct bNodeTree *ntree); +void ED_node_tag_update_nodetree(struct Main *bmain, struct bNodeTree *ntree, struct bNode *node); void ED_node_sort(struct bNodeTree *ntree); float ED_node_grid_size(void); |