summaryrefslogtreecommitdiffstats
path: root/tests/manual/bigscene-cpp/main.cpp
diff options
context:
space:
mode:
authorMike Krus <mike.krus@kdab.com>2020-04-24 13:43:56 +0100
committerMike Krus <mike.krus@kdab.com>2020-04-27 11:57:33 +0100
commit6c1758d35e20655f46ba3696671068f4862c8878 (patch)
treed4b4fc2ae8f5a4512de4eb015667b024b6a8e6b9 /tests/manual/bigscene-cpp/main.cpp
parentb7967a8abcdac438a1f31800b71e219e3c52c24a (diff)
parent37735f11f9437b916b194cfd48c452c7c70682f8 (diff)
Merge remote-tracking branch 'origin/5.15' into dev
Diffstat (limited to 'tests/manual/bigscene-cpp/main.cpp')
-rw-r--r--tests/manual/bigscene-cpp/main.cpp46
1 files changed, 45 insertions, 1 deletions
diff --git a/tests/manual/bigscene-cpp/main.cpp b/tests/manual/bigscene-cpp/main.cpp
index 5e61758db..5a66cb213 100644
--- a/tests/manual/bigscene-cpp/main.cpp
+++ b/tests/manual/bigscene-cpp/main.cpp
@@ -70,6 +70,11 @@
#include <qmath.h>
#include <Qt3DExtras/qt3dwindow.h>
#include <Qt3DExtras/qfirstpersoncameracontroller.h>
+#include <Qt3DRender/QRenderSurfaceSelector>
+#include <Qt3DRender/QCameraSelector>
+#include <Qt3DRender/QViewport>
+#include <Qt3DRender/QNoDraw>
+#include <Qt3DRender/QDebugOverlay>
using namespace Qt3DCore;
using namespace Qt3DRender;
@@ -78,7 +83,46 @@ int main(int ac, char **av)
{
QGuiApplication app(ac, av);
Qt3DExtras::Qt3DWindow view;
- view.defaultFrameGraph()->setClearColor(Qt::black);
+
+ // FrameGraph
+ {
+ QRenderSurfaceSelector *surfaceSelector = new QRenderSurfaceSelector();
+ QCameraSelector *cameraSelector = new Qt3DRender::QCameraSelector(surfaceSelector);
+ cameraSelector->setCamera(view.camera());
+ QClearBuffers *clearBuffers = new Qt3DRender::QClearBuffers(cameraSelector);
+ clearBuffers->setClearColor(QColor(Qt::gray));
+ clearBuffers->setBuffers(QClearBuffers::ColorDepthBuffer);
+ new QNoDraw(clearBuffers);
+
+ const QRectF viewports[] = {
+ {0.0f, 0.0f, 0.25f, 0.25f},
+ {0.25f, 0.0f, 0.25f, 0.25f},
+ {0.5f, 0.0f, 0.25f, 0.25f},
+ {0.75f, 0.0f, 0.25f, 0.25f},
+ {0.0f, 0.25f, 0.25f, 0.25f},
+ {0.25f, 0.25f, 0.25f, 0.25f},
+ {0.5f, 0.25f, 0.25f, 0.25f},
+ {0.75f, 0.25f, 0.25f, 0.25f},
+ {0.0f, 0.5f, 0.25f, 0.25f},
+ {0.25f, 0.5f, 0.25f, 0.25f},
+ {0.5f, 0.5f, 0.25f, 0.25f},
+ {0.75f, 0.5f, 0.25f, 0.25f},
+ {0.0f, 0.75f, 0.25f, 0.25f},
+ {0.25f, 0.75f, 0.25f, 0.25f},
+ {0.5f, 0.75f, 0.25f, 0.25f},
+ {0.75f, 0.75f, 0.25f, 0.25f},
+ };
+
+ for (const QRectF &vp : viewports) {
+ QViewport *viewport = new Qt3DRender::QViewport(cameraSelector);
+ viewport->setNormalizedRect(vp);
+ }
+
+ new QDebugOverlay(qobject_cast<Qt3DCore::QNode *>(cameraSelector->children().last()));
+
+ view.setActiveFrameGraph(surfaceSelector);
+ }
+
QEntity *root = new QEntity();