summaryrefslogtreecommitdiffstats
path: root/src/render/jobs
diff options
context:
space:
mode:
authorSean Harmer <sean.harmer@kdab.com>2016-01-15 13:16:55 +0000
committerSean Harmer <sean.harmer@kdab.com>2016-01-17 17:20:50 +0000
commitd5e7727c58a35a5f68260f4a1d4ce3a61d652765 (patch)
tree92d74bcb983f8c8a7c0470b5c98bb8ab09b4874e /src/render/jobs
parent21704e30c7abbf2f0d4cbc0f144c5bc5e3939abc (diff)
Store the surface to use in the RenderView
Change-Id: I4dbdfe9315dc3b0bb89119372301d24a292520d9 Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
Diffstat (limited to 'src/render/jobs')
-rw-r--r--src/render/jobs/renderviewjobutils.cpp11
1 files changed, 11 insertions, 0 deletions
diff --git a/src/render/jobs/renderviewjobutils.cpp b/src/render/jobs/renderviewjobutils.cpp
index c9d7e2434..c2f03fc69 100644
--- a/src/render/jobs/renderviewjobutils.cpp
+++ b/src/render/jobs/renderviewjobutils.cpp
@@ -58,6 +58,7 @@
#include <Qt3DRender/private/shaderdata_p.h>
#include <Qt3DRender/private/statesetnode_p.h>
#include <Qt3DRender/private/dispatchcompute_p.h>
+#include <Qt3DRender/private/rendersurfaceselector_p.h>
QT_BEGIN_NAMESPACE
@@ -222,6 +223,16 @@ void setRenderViewConfigFromFrameGraphLeafNode(RenderView *rv, const FrameGraphN
break;
}
+ case FrameGraphNode::Surface: {
+ // Use the surface closest to leaf node
+ if (rv->surface() == Q_NULLPTR) {
+ const Render::RenderSurfaceSelector *surfaceSelector
+ = static_cast<const Render::RenderSurfaceSelector *>(node);
+ rv->setSurface(surfaceSelector->surface());
+ }
+ break;
+ }
+
default:
// Should never get here
qCWarning(Backend) << "Unhandled FrameGraphNode type";