Fix T98157: improve animation fps with better check in depsgraph

Previously, the depsgraph assumed that every node tree might contain
a reference to a video. This resulted noticeable overhead when there
was no video.

Checking whether a node tree contained a video was relatively expensive
to do in the depsgraph. It is cheaper now due to the structure of the new
node tree updater.

This also adds an additional run-time field to `bNodeTree` (there are
quite a few already). We should move those to a separate run-time
struct, but not as part of a bug fix.

Differential Revision: https://developer.blender.org/D14957
This commit is contained in:
2022-05-18 16:42:49 +02:00
parent 136a06285f
commit f517b3a295
5 changed files with 62 additions and 11 deletions

View File

@@ -670,6 +670,7 @@ void ntreeBlendReadData(BlendDataReader *reader, bNodeTree *ntree)
ntree->progress = nullptr;
ntree->execdata = nullptr;
ntree->runtime_flag = 0;
ntree->field_inferencing_interface = nullptr;
BKE_ntree_update_tag_missing_runtime_data(ntree);