use a system of deferred maps to keep track of frames that don't need to be rendered twice

Mostly used for exporting to ensure all frames get accounted for when being
sent from the renderer to the exporter through signals/slots.
This commit is contained in:
itsmattkc
2019-12-22 03:03:08 +11:00
parent 8514590c83
commit 46855adea7
5 changed files with 39 additions and 29 deletions
+1 -1
View File
@@ -30,7 +30,7 @@ NodeValueTable VideoRenderWorker::RenderInternal(const NodeDependency& path)
if (frame_cache_->HasHash(hash)) {
// We've already cached this hash, no need to continue
emit HashAlreadyExists(path, hash);
} else if (frame_cache_->TryCache(hash)) {
} else if (frame_cache_->TryCache(path.in(), hash)) {
// This hash is available for us to cache, start traversing graph
value = ProcessNode(path);