summaryrefslogtreecommitdiffstats
path: root/src/render/framegraph/rendertargetselectornode.cpp
diff options
context:
space:
mode:
authorPaul Lemire <paul.lemire@kdab.com>2018-09-20 08:33:44 +0200
committerPaul Lemire <paul.lemire@kdab.com>2018-10-12 07:54:37 +0000
commit8aef6b775855e623af46802806dbf86d76926913 (patch)
treecc93c42812c101e8de4a15b20ed6f2ba1700b59d /src/render/framegraph/rendertargetselectornode.cpp
parent1739b90d6120e24065b0c85a8d293234c5d51787 (diff)
Make backend FG node use FrameGraphDirty instead of AllDirty
So as to later on allow finer grained job launching and not force every job to be rerun when we know only the FG has changed. Change-Id: I09f935f8a1793722159ba645acc2ad4b00983041 Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
Diffstat (limited to 'src/render/framegraph/rendertargetselectornode.cpp')
-rw-r--r--src/render/framegraph/rendertargetselectornode.cpp8
1 files changed, 5 insertions, 3 deletions
diff --git a/src/render/framegraph/rendertargetselectornode.cpp b/src/render/framegraph/rendertargetselectornode.cpp
index 4b6e2da84..615608bd2 100644
--- a/src/render/framegraph/rendertargetselectornode.cpp
+++ b/src/render/framegraph/rendertargetselectornode.cpp
@@ -73,11 +73,13 @@ void RenderTargetSelector::sceneChangeEvent(const Qt3DCore::QSceneChangePtr &e)
qCDebug(Render::Framegraph) << Q_FUNC_INFO;
if (e->type() == PropertyUpdated) {
QPropertyUpdatedChangePtr propertyChange = qSharedPointerCast<QPropertyUpdatedChange>(e);
- if (propertyChange->propertyName() == QByteArrayLiteral("target"))
+ if (propertyChange->propertyName() == QByteArrayLiteral("target")) {
m_renderTargetUuid = propertyChange->value().value<QNodeId>();
- else if (propertyChange->propertyName() == QByteArrayLiteral("outputs"))
+ markDirty(AbstractRenderer::FrameGraphDirty);
+ } else if (propertyChange->propertyName() == QByteArrayLiteral("outputs")) {
m_outputs = propertyChange->value().value<QVector<Qt3DRender::QRenderTargetOutput::AttachmentPoint> >();
- markDirty(AbstractRenderer::AllDirty);
+ markDirty(AbstractRenderer::FrameGraphDirty);
+ }
}
FrameGraphNode::sceneChangeEvent(e);
}