summaryrefslogtreecommitdiffstats
path: root/examples
diff options
context:
space:
mode:
authorPaul Lemire <paul.lemire@kdab.com>2016-01-15 15:09:44 +0100
committerSean Harmer <sean.harmer@kdab.com>2016-01-16 17:17:49 +0000
commitb0404a42ced2ea5a583e1c6ddc22940ffdc1e48e (patch)
treeb073c3c680e388bda00228b204743b092b11de6a /examples
parent8656b95ffb67efe7dd1cc3a65b12d277e83e1d22 (diff)
Move QCamera/QCameraLens to Qt3DRender
Also get rid of Qt3DRender::QWindow and of the hard codes camera controller. Change-Id: I307735d01caf97b7a690b28de8dc99fc9866c35f Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
Diffstat (limited to 'examples')
-rw-r--r--examples/qt3d/assimp-cpp/main.cpp17
-rw-r--r--examples/qt3d/basicshapes-cpp/main.cpp17
-rw-r--r--examples/qt3d/bigscene-cpp/main.cpp16
-rw-r--r--examples/qt3d/cpp_example/main.cpp18
-rw-r--r--examples/qt3d/custom-mesh-cpp/main.cpp19
-rw-r--r--examples/qt3d/cylinder-cpp/main.cpp27
-rw-r--r--examples/qt3d/deferred-renderer-cpp/main.cpp23
-rw-r--r--examples/qt3d/dynamicscene-cpp/main.cpp16
-rw-r--r--examples/qt3d/examples-common/qfirstpersoncameracontroller.cpp6
-rw-r--r--examples/qt3d/examples-common/qfirstpersoncameracontroller.h8
-rw-r--r--examples/qt3d/examples-common/qfirstpersoncameracontroller_p.h4
-rw-r--r--examples/qt3d/examples-common/qt3dwindow.cpp16
-rw-r--r--examples/qt3d/examples-common/qt3dwindow.h8
-rw-r--r--examples/qt3d/materials-cpp/main.cpp16
-rw-r--r--examples/qt3d/simple-cpp/main.cpp14
15 files changed, 122 insertions, 103 deletions
diff --git a/examples/qt3d/assimp-cpp/main.cpp b/examples/qt3d/assimp-cpp/main.cpp
index 59f49a8fb..660cef2fd 100644
--- a/examples/qt3d/assimp-cpp/main.cpp
+++ b/examples/qt3d/assimp-cpp/main.cpp
@@ -37,7 +37,7 @@
#include <QFileDialog>
#include <QApplication>
-#include <Qt3DCore/QCamera>
+#include <Qt3DRender/QCamera>
#include <Qt3DCore/QEntity>
#include <Qt3DCore/QAspectEngine>
#include <Qt3DInput/QInputAspect>
@@ -45,7 +45,8 @@
#include <Qt3DRender/QSceneLoader>
#include <Qt3DRender/QRenderAspect>
#include <Qt3DRender/QForwardRenderer>
-#include <Qt3DRender/QWindow>
+#include "qt3dwindow.h"
+#include "qfirstpersoncameracontroller.h"
class SceneWalker : public QObject
{
@@ -103,17 +104,14 @@ void SceneWalker::walkEntity(Qt3DCore::QEntity *e, int depth)
int main(int ac, char **av)
{
QApplication app(ac, av);
-
- Qt3DRender::QWindow view;
- Qt3DInput::QInputAspect *inputAspect = new Qt3DInput::QInputAspect();
- view.registerAspect(inputAspect);
+ Qt3DWindow view;
// Root entity
Qt3DCore::QEntity *sceneRoot = new Qt3DCore::QEntity();
// Scene Camera
- Qt3DCore::QCamera *basicCamera = view.defaultCamera();
- basicCamera->setProjectionType(Qt3DCore::QCameraLens::PerspectiveProjection);
+ Qt3DRender::QCamera *basicCamera = view.camera();
+ basicCamera->setProjectionType(Qt3DRender::QCameraLens::PerspectiveProjection);
basicCamera->setAspectRatio(view.width() / view.height());
basicCamera->setUpVector(QVector3D(0.0f, 1.0f, 0.0f));
basicCamera->setViewCenter(QVector3D(0.0f, 3.5f, 0.0f));
@@ -121,7 +119,8 @@ int main(int ac, char **av)
basicCamera->setNearPlane(0.001f);
basicCamera->setFarPlane(10000.0f);
// For camera controls
- inputAspect->setCamera(basicCamera);
+ Qt3DInput::QFirstPersonCameraController *camController = new Qt3DInput::QFirstPersonCameraController(sceneRoot);
+ camController->setCamera(basicCamera);
// Forward Renderer FrameGraph
Qt3DRender::QFrameGraph *frameGraphComponent = new Qt3DRender::QFrameGraph(sceneRoot);
diff --git a/examples/qt3d/basicshapes-cpp/main.cpp b/examples/qt3d/basicshapes-cpp/main.cpp
index f7e50fdd5..586647849 100644
--- a/examples/qt3d/basicshapes-cpp/main.cpp
+++ b/examples/qt3d/basicshapes-cpp/main.cpp
@@ -38,9 +38,9 @@
#include <QGuiApplication>
-#include <Qt3DCore/qcamera.h>
+#include <Qt3DRender/qcamera.h>
#include <Qt3DCore/qentity.h>
-#include <Qt3DCore/qcameralens.h>
+#include <Qt3DRender/qcameralens.h>
#include <QtWidgets/QApplication>
#include <QtWidgets/QWidget>
@@ -59,7 +59,6 @@
#include <Qt3DRender/qtexture.h>
#include <Qt3DRender/qrenderpass.h>
#include <Qt3DRender/qsceneloader.h>
-#include <Qt3DRender/qwindow.h>
#include <Qt3DCore/qtransform.h>
#include <Qt3DCore/qaspectengine.h>
@@ -68,10 +67,13 @@
#include <Qt3DRender/qframegraph.h>
#include <Qt3DRender/qforwardrenderer.h>
+#include "qt3dwindow.h"
+#include "qfirstpersoncameracontroller.h"
+
int main(int argc, char **argv)
{
QApplication app(argc, argv);
- Qt3DRender::QWindow *view = new Qt3DRender::QWindow();
+ Qt3DWindow *view = new Qt3DWindow();
QWidget *container = QWidget::createWindowContainer(view);
QSize screenSize = view->screen()->size();
container->setMinimumSize(QSize(200, 100));
@@ -93,13 +95,16 @@ int main(int argc, char **argv)
Qt3DCore::QEntity *rootEntity = new Qt3DCore::QEntity();
// Camera
- Qt3DCore::QCamera *cameraEntity = view->defaultCamera();
+ Qt3DRender::QCamera *cameraEntity = view->camera();
cameraEntity->lens()->setPerspectiveProjection(45.0f, 16.0f/9.0f, 0.1f, 1000.0f);
cameraEntity->setPosition(QVector3D(0, 0, 20.0f));
cameraEntity->setUpVector(QVector3D(0, 1, 0));
cameraEntity->setViewCenter(QVector3D(0, 0, 0));
- input->setCamera(cameraEntity);
+
+ // For camera controls
+ Qt3DInput::QFirstPersonCameraController *camController = new Qt3DInput::QFirstPersonCameraController(rootEntity);
+ camController->setCamera(cameraEntity);
// FrameGraph
Qt3DRender::QFrameGraph *frameGraph = new Qt3DRender::QFrameGraph();
diff --git a/examples/qt3d/bigscene-cpp/main.cpp b/examples/qt3d/bigscene-cpp/main.cpp
index 6cd25a5b4..46e4acb0b 100644
--- a/examples/qt3d/bigscene-cpp/main.cpp
+++ b/examples/qt3d/bigscene-cpp/main.cpp
@@ -42,7 +42,7 @@
#include <QUrl>
#include <QTimer>
#include <Qt3DCore/QEntity>
-#include <Qt3DCore/QCamera>
+#include <Qt3DRender/QCamera>
#include <Qt3DCore/QTransform>
#include <Qt3DCore/qaspectengine.h>
#include <Qt3DInput/QInputAspect>
@@ -53,8 +53,9 @@
#include <Qt3DRender/QCameraSelector>
#include <Qt3DRender/QPhongMaterial>
#include <Qt3DRender/QForwardRenderer>
-#include <Qt3DRender/QWindow>
#include <qmath.h>
+#include "qt3dwindow.h"
+#include "qfirstpersoncameracontroller.h"
using namespace Qt3DCore;
using namespace Qt3DRender;
@@ -63,19 +64,20 @@ int main(int ac, char **av)
{
QGuiApplication app(ac, av);
- Qt3DRender::QWindow view;
- Qt3DInput::QInputAspect *input = new Qt3DInput::QInputAspect;
- view.registerAspect(input);
+ Qt3DWindow view;
QEntity *root = new QEntity();
// Camera
- QCamera *cameraEntity = view.defaultCamera();
+ QCamera *cameraEntity = view.camera();
cameraEntity->setObjectName(QStringLiteral("cameraEntity"));
cameraEntity->lens()->setPerspectiveProjection(45.0f, 16.0f/9.0f, 0.1f, 1000.0f);
cameraEntity->setPosition(QVector3D(0, 250.0f, 50.0f));
cameraEntity->setUpVector(QVector3D(0, 1, 0));
cameraEntity->setViewCenter(QVector3D(0, 0, 0));
- input->setCamera(cameraEntity);
+
+ // For camera controls
+ Qt3DInput::QFirstPersonCameraController *camController = new Qt3DInput::QFirstPersonCameraController(root);
+ camController->setCamera(cameraEntity);
// FrameGraph
QFrameGraph *frameGraph = new QFrameGraph();
diff --git a/examples/qt3d/cpp_example/main.cpp b/examples/qt3d/cpp_example/main.cpp
index 955e0d593..9e7708abf 100644
--- a/examples/qt3d/cpp_example/main.cpp
+++ b/examples/qt3d/cpp_example/main.cpp
@@ -36,9 +36,9 @@
#include <QGuiApplication>
-#include <Qt3DCore/qcamera.h>
+#include <Qt3DRender/qcamera.h>
#include <Qt3DCore/qentity.h>
-#include <Qt3DCore/qcameralens.h>
+#include <Qt3DRender/qcameralens.h>
#include <Qt3DCore/qaspectengine.h>
#include <Qt3DCore/qtransform.h>
@@ -59,15 +59,14 @@
#include <Qt3DRender/qrenderaspect.h>
#include <Qt3DRender/qframegraph.h>
#include <Qt3DRender/qclearbuffer.h>
-#include <Qt3DRender/qwindow.h>
+#include "qt3dwindow.h"
+#include "qfirstpersoncameracontroller.h"
int main(int ac, char **av)
{
QGuiApplication app(ac, av);
- Qt3DRender::QWindow view;
- Qt3DInput::QInputAspect *input = new Qt3DInput::QInputAspect;
- view.registerAspect(input);
+ Qt3DWindow view;
// Root entity
Qt3DCore::QEntity *rootEntity = new Qt3DCore::QEntity();
@@ -99,13 +98,16 @@ int main(int ac, char **av)
sceneEntity->addComponent(scene);
// Camera
- Qt3DCore::QCamera *cameraEntity = view.defaultCamera();
+ Qt3DRender::QCamera *cameraEntity = view.camera();
cameraEntity->setObjectName(QStringLiteral("cameraEntity"));
cameraEntity->lens()->setPerspectiveProjection(60.0f, 16.0f/9.0f, 0.1f, 1000.0f);
cameraEntity->setPosition(QVector3D(5, 0, 20.0f));
cameraEntity->setViewCenter(QVector3D(11, 0, 5));
cameraEntity->setUpVector(QVector3D(0, 1, 0));
- input->setCamera(cameraEntity);
+
+ // For camera controls
+ Qt3DInput::QFirstPersonCameraController *camController = new Qt3DInput::QFirstPersonCameraController(rootEntity);
+ camController->setCamera(cameraEntity);
// FrameGraph
Qt3DRender::QFrameGraph *frameGraph = new Qt3DRender::QFrameGraph();
diff --git a/examples/qt3d/custom-mesh-cpp/main.cpp b/examples/qt3d/custom-mesh-cpp/main.cpp
index 6bd75dff7..0b412f857 100644
--- a/examples/qt3d/custom-mesh-cpp/main.cpp
+++ b/examples/qt3d/custom-mesh-cpp/main.cpp
@@ -37,8 +37,8 @@
#include <QGuiApplication>
#include <Qt3DCore/QEntity>
-#include <Qt3DCore/QCamera>
-#include <Qt3DCore/QCameraLens>
+#include <Qt3DRender/QCamera>
+#include <Qt3DRender/QCameraLens>
#include <Qt3DCore/QTransform>
#include <Qt3DCore/QAspectEngine>
@@ -54,29 +54,30 @@
#include <Qt3DRender/QGeometry>
#include <Qt3DRender/QAttribute>
#include <Qt3DRender/QBuffer>
-#include <Qt3DRender/QWindow>
#include <QPropertyAnimation>
+#include "qt3dwindow.h"
+#include "qfirstpersoncameracontroller.h"
int main(int argc, char* argv[])
{
QGuiApplication app(argc, argv);
- Qt3DRender::QWindow view;
-
- Qt3DInput::QInputAspect *input = new Qt3DInput::QInputAspect;
- view.registerAspect(input);
+ Qt3DWindow view;
// Root entity
Qt3DCore::QEntity *rootEntity = new Qt3DCore::QEntity();
// Camera
- Qt3DCore::QCamera *cameraEntity = view.defaultCamera();
+ Qt3DRender::QCamera *cameraEntity = view.camera();
cameraEntity->lens()->setPerspectiveProjection(45.0f, 16.0f/9.0f, 0.1f, 1000.0f);
cameraEntity->setPosition(QVector3D(0, 0, 40.0f));
cameraEntity->setUpVector(QVector3D(0, 1, 0));
cameraEntity->setViewCenter(QVector3D(0, 0, 0));
- input->setCamera(cameraEntity);
+
+ // For camera controls
+ Qt3DInput::QFirstPersonCameraController *camController = new Qt3DInput::QFirstPersonCameraController(rootEntity);
+ camController->setCamera(cameraEntity);
// FrameGraph
Qt3DRender::QFrameGraph *frameGraph = new Qt3DRender::QFrameGraph();
diff --git a/examples/qt3d/cylinder-cpp/main.cpp b/examples/qt3d/cylinder-cpp/main.cpp
index f45492926..bf7a35983 100644
--- a/examples/qt3d/cylinder-cpp/main.cpp
+++ b/examples/qt3d/cylinder-cpp/main.cpp
@@ -36,12 +36,10 @@
#include <QGuiApplication>
-#include <Qt3DCore/qcamera.h>
-#include <Qt3DCore/qentity.h>
-#include <Qt3DCore/qcameralens.h>
-
#include <Qt3DInput/QInputAspect>
+#include <Qt3DRender/qcamera.h>
+#include <Qt3DRender/qcameralens.h>
#include <Qt3DRender/qcylindermesh.h>
#include <Qt3DRender/qmesh.h>
#include <Qt3DRender/qtechnique.h>
@@ -49,35 +47,38 @@
#include <Qt3DRender/qeffect.h>
#include <Qt3DRender/qtexture.h>
#include <Qt3DRender/qrenderpass.h>
+#include <Qt3DRender/qrenderaspect.h>
+#include <Qt3DRender/qframegraph.h>
+#include <Qt3DRender/qforwardrenderer.h>
+#include <Qt3DCore/qentity.h>
#include <Qt3DCore/qtransform.h>
#include <Qt3DCore/qaspectengine.h>
-#include <Qt3DRender/qrenderaspect.h>
-#include <Qt3DRender/qframegraph.h>
-#include <Qt3DRender/qforwardrenderer.h>
-#include <Qt3DRender/qwindow.h>
+#include "qt3dwindow.h"
+#include "qfirstpersoncameracontroller.h"
int main(int argc, char **argv)
{
QGuiApplication app(argc, argv);
- Qt3DRender::QWindow view;
- Qt3DInput::QInputAspect *input = new Qt3DInput::QInputAspect;
- view.registerAspect(input);
+ Qt3DWindow view;
// Root entity
Qt3DCore::QEntity *rootEntity = new Qt3DCore::QEntity();
// Camera
- Qt3DCore::QCamera *cameraEntity = view.defaultCamera();
+ Qt3DRender::QCamera *cameraEntity = view.camera();
cameraEntity->setObjectName(QStringLiteral("cameraEntity"));
cameraEntity->lens()->setPerspectiveProjection(45.0f, 16.0f/9.0f, 0.1f, 1000.0f);
cameraEntity->setPosition(QVector3D(0, 0, 20.0f));
cameraEntity->setUpVector(QVector3D(0, 1, 0));
cameraEntity->setViewCenter(QVector3D(0, 0, 0));
- input->setCamera(cameraEntity);
+
+ // For camera controls
+ Qt3DInput::QFirstPersonCameraController *camController = new Qt3DInput::QFirstPersonCameraController(rootEntity);
+ camController->setCamera(cameraEntity);
// FrameGraph
Qt3DRender::QFrameGraph *frameGraph = new Qt3DRender::QFrameGraph();
diff --git a/examples/qt3d/deferred-renderer-cpp/main.cpp b/examples/qt3d/deferred-renderer-cpp/main.cpp
index b3df94b1a..b910b4920 100644
--- a/examples/qt3d/deferred-renderer-cpp/main.cpp
+++ b/examples/qt3d/deferred-renderer-cpp/main.cpp
@@ -36,20 +36,16 @@
#include <Qt3DCore/QEntity>
-#include <Qt3DInput/QInputAspect>
-
-#include <Qt3DRender/QRenderAspect>
#include <Qt3DRender/QFrameGraph>
#include <Qt3DRender/QMaterial>
#include <Qt3DRender/QSphereMesh>
#include <Qt3DRender/QPlaneMesh>
#include <Qt3DRender/QLayer>
#include <Qt3DRender/QParameter>
-#include <Qt3DCore/QCamera>
-#include <Qt3DCore/QCameraLens>
+#include <Qt3DRender/QCamera>
+#include <Qt3DRender/QCameraLens>
#include <Qt3DCore/QTransform>
#include <Qt3DRender/QPointLight>
-#include <Qt3DRender/QWindow>
#include <Qt3DCore/qaspectengine.h>
#include <QGuiApplication>
@@ -59,14 +55,15 @@
#include "finaleffect.h"
#include "sceneeffect.h"
#include "pointlightblock.h"
+#include "qt3dwindow.h"
+#include "qfirstpersoncameracontroller.h"
+
int main(int ac, char **av)
{
QGuiApplication app(ac, av);
- Qt3DRender::QWindow view;
- Qt3DInput::QInputAspect *input = new Qt3DInput::QInputAspect();
- view.registerAspect(input);
+ Qt3DWindow view;
// Root entity
Qt3DCore::QEntity *rootEntity = new Qt3DCore::QEntity();
@@ -99,18 +96,20 @@ int main(int ac, char **av)
rootEntity->addComponent(light1);
// Scene Camera
- Qt3DCore::QCamera *camera = view.defaultCamera();
+ Qt3DRender::QCamera *camera = view.camera();
camera->setFieldOfView(45.0f);
camera->setNearPlane(0.01f);
camera->setFarPlane(1000.0f);
- camera->setProjectionType(Qt3DCore::QCameraLens::PerspectiveProjection);
+ camera->setProjectionType(Qt3DRender::QCameraLens::PerspectiveProjection);
camera->setPosition(QVector3D(10.0f, 10.0f, -25.0f));
camera->setUpVector(QVector3D(0.0f, 1.0f, 0.0f));
camera->setViewCenter(QVector3D(0.0f, 0.0f, 10.0f));
- input->setCamera(camera);
+ // For camera controls
+ Qt3DInput::QFirstPersonCameraController *camController = new Qt3DInput::QFirstPersonCameraController(rootEntity);
+ camController->setCamera(camera);
// FrameGraph
Qt3DRender::QFrameGraph *frameGraph = new Qt3DRender::QFrameGraph();
diff --git a/examples/qt3d/dynamicscene-cpp/main.cpp b/examples/qt3d/dynamicscene-cpp/main.cpp
index ea7a86330..95e53be85 100644
--- a/examples/qt3d/dynamicscene-cpp/main.cpp
+++ b/examples/qt3d/dynamicscene-cpp/main.cpp
@@ -37,37 +37,37 @@
#include <QGuiApplication>
#include <Qt3DCore/QAspectEngine>
-#include <Qt3DCore/QCamera>
+#include <Qt3DRender/QCamera>
#include <Qt3DInput/QInputAspect>
#include <Qt3DRender/QRenderAspect>
#include <Qt3DRender/QFrameGraph>
#include <Qt3DRender/QForwardRenderer>
-#include <Qt3DRender/QWindow>
#include "forwardrenderer.h"
#include "examplescene.h"
+#include "qt3dwindow.h"
+#include "qfirstpersoncameracontroller.h"
int main(int argc, char* argv[])
{
QGuiApplication app(argc, argv);
- Qt3DRender::QWindow view;
- Qt3DInput::QInputAspect *input = new Qt3DInput::QInputAspect;
- view.registerAspect(input);
+ Qt3DWindow view;
ExampleScene *sceneRoot = new ExampleScene();
// Scene Camera
- Qt3DCore::QCamera *basicCamera = view.defaultCamera();
- basicCamera->setProjectionType(Qt3DCore::QCameraLens::PerspectiveProjection);
+ Qt3DRender::QCamera *basicCamera = view.camera();
+ basicCamera->setProjectionType(Qt3DRender::QCameraLens::PerspectiveProjection);
basicCamera->setAspectRatio(view.width() / view.height());
basicCamera->setUpVector(QVector3D(0.0f, 1.0f, 0.0f));
basicCamera->setViewCenter(QVector3D(0.0f, 3.5f, 0.0f));
basicCamera->setPosition(QVector3D(0.0f, 3.5f, 25.0f));
// For camera controls
- input->setCamera(basicCamera);
+ Qt3DInput::QFirstPersonCameraController *camController = new Qt3DInput::QFirstPersonCameraController(sceneRoot);
+ camController->setCamera(basicCamera);
view.setRootEntity(sceneRoot);
view.show();
diff --git a/examples/qt3d/examples-common/qfirstpersoncameracontroller.cpp b/examples/qt3d/examples-common/qfirstpersoncameracontroller.cpp
index 46ae0c115..10b0d7ec7 100644
--- a/examples/qt3d/examples-common/qfirstpersoncameracontroller.cpp
+++ b/examples/qt3d/examples-common/qfirstpersoncameracontroller.cpp
@@ -36,7 +36,7 @@
#include "qfirstpersoncameracontroller_p.h"
#include "qfirstpersoncameracontroller.h"
-#include <Qt3DCore/QCamera>
+#include <Qt3DRender/QCamera>
#include <Qt3DInput/QAxis>
#include <Qt3DInput/QAxisInput>
#include <Qt3DInput/QAction>
@@ -226,7 +226,7 @@ QFirstPersonCameraController::~QFirstPersonCameraController()
{
}
-Qt3DCore::QCamera *QFirstPersonCameraController::camera() const
+Qt3DRender::QCamera *QFirstPersonCameraController::camera() const
{
Q_D(const QFirstPersonCameraController);
return d->m_camera;
@@ -244,7 +244,7 @@ float QFirstPersonCameraController::lookSpeed() const
return d->m_lookSpeed;
}
-void QFirstPersonCameraController::setCamera(Qt3DCore::QCamera *camera)
+void QFirstPersonCameraController::setCamera(Qt3DRender::QCamera *camera)
{
Q_D(QFirstPersonCameraController);
if (d->m_camera != camera) {
diff --git a/examples/qt3d/examples-common/qfirstpersoncameracontroller.h b/examples/qt3d/examples-common/qfirstpersoncameracontroller.h
index b1755d7d4..6f8d21ebf 100644
--- a/examples/qt3d/examples-common/qfirstpersoncameracontroller.h
+++ b/examples/qt3d/examples-common/qfirstpersoncameracontroller.h
@@ -41,7 +41,7 @@
QT_BEGIN_NAMESPACE
-namespace Qt3DCore {
+namespace Qt3DRender {
class QCamera;
}
@@ -52,7 +52,7 @@ class QFirstPersonCameraControllerPrivate;
class QFirstPersonCameraController : public Qt3DCore::QEntity
{
Q_OBJECT
- Q_PROPERTY(Qt3DCore::QCamera *camera READ camera WRITE setCamera NOTIFY cameraChanged)
+ Q_PROPERTY(Qt3DRender::QCamera *camera READ camera WRITE setCamera NOTIFY cameraChanged)
Q_PROPERTY(float linearSpeed READ linearSpeed WRITE setLinearSpeed NOTIFY linearSpeedChanged)
Q_PROPERTY(float lookSpeed READ lookSpeed WRITE setLookSpeed NOTIFY lookSpeedChanged)
@@ -60,11 +60,11 @@ public:
explicit QFirstPersonCameraController(Qt3DCore::QNode *parent = Q_NULLPTR);
~QFirstPersonCameraController();
- Qt3DCore::QCamera *camera() const;
+ Qt3DRender::QCamera *camera() const;
float linearSpeed() const;
float lookSpeed() const;
- void setCamera(Qt3DCore::QCamera *camera);
+ void setCamera(Qt3DRender::QCamera *camera);
void setLinearSpeed(float linearSpeed);
void setLookSpeed(float lookSpeed);
diff --git a/examples/qt3d/examples-common/qfirstpersoncameracontroller_p.h b/examples/qt3d/examples-common/qfirstpersoncameracontroller_p.h
index 985b9f536..d5ac58d56 100644
--- a/examples/qt3d/examples-common/qfirstpersoncameracontroller_p.h
+++ b/examples/qt3d/examples-common/qfirstpersoncameracontroller_p.h
@@ -43,7 +43,7 @@
QT_BEGIN_NAMESPACE
-namespace Qt3DCore {
+namespace Qt3DRender {
class QCamera;
}
@@ -69,7 +69,7 @@ public:
void init();
- Qt3DCore::QCamera *m_camera;
+ Qt3DRender::QCamera *m_camera;
QAction *m_leftMouseButtonAction;
QAction *m_fineMotionAction;
QAxis *m_rxAxis;
diff --git a/examples/qt3d/examples-common/qt3dwindow.cpp b/examples/qt3d/examples-common/qt3dwindow.cpp
index 9575424a8..e46b052a7 100644
--- a/examples/qt3d/examples-common/qt3dwindow.cpp
+++ b/examples/qt3d/examples-common/qt3dwindow.cpp
@@ -43,7 +43,7 @@
#include <Qt3DLogic/qlogicaspect.h>
#include <Qt3DCore/qaspectengine.h>
-#include <Qt3DCore/qcamera.h>
+#include <Qt3DRender/qcamera.h>
#include <Qt3DCore/qentity.h>
#include <QtGui/qopenglcontext.h>
@@ -57,7 +57,7 @@ Qt3DWindow::Qt3DWindow(QScreen *screen)
, m_inputAspect(new Qt3DInput::QInputAspect)
, m_logicAspect(new Qt3DLogic::QLogicAspect)
, m_frameGraph(nullptr)
- , m_defaultCamera(new Qt3DCore::QCamera)
+ , m_defaultCamera(new Qt3DRender::QCamera)
, m_root(new Qt3DCore::QEntity)
, m_userRoot(nullptr)
, m_initialized(false)
@@ -89,7 +89,7 @@ Qt3DWindow::Qt3DWindow(QWindow *parent)
, m_inputAspect(new Qt3DInput::QInputAspect)
, m_logicAspect(new Qt3DLogic::QLogicAspect)
, m_frameGraph(nullptr)
- , m_defaultCamera(new Qt3DCore::QCamera)
+ , m_defaultCamera(new Qt3DRender::QCamera)
, m_root(new Qt3DCore::QEntity)
, m_userRoot(nullptr)
, m_initialized(false)
@@ -135,7 +135,12 @@ void Qt3DWindow::setRootEntity(Qt3DCore::QEntity *root)
m_userRoot = root;
}
-Qt3DCore::QCamera *Qt3DWindow::camera() const
+void Qt3DWindow::setFrameGraph(Qt3DRender::QFrameGraph *frameGraph)
+{
+ m_frameGraph = frameGraph;
+}
+
+Qt3DRender::QCamera *Qt3DWindow::camera() const
{
return m_defaultCamera;
}
@@ -162,9 +167,6 @@ void Qt3DWindow::showEvent(QShowEvent *e)
m_root->addComponent(m_frameGraph);
m_aspectEngine->setRootEntity(m_root);
- // TODO: Get rid of this too
- m_inputAspect->setCamera(m_defaultCamera);
-
m_initialized = true;
}
diff --git a/examples/qt3d/examples-common/qt3dwindow.h b/examples/qt3d/examples-common/qt3dwindow.h
index b42e3d81c..df527acd6 100644
--- a/examples/qt3d/examples-common/qt3dwindow.h
+++ b/examples/qt3d/examples-common/qt3dwindow.h
@@ -43,11 +43,12 @@ QT_BEGIN_NAMESPACE
namespace Qt3DCore {
class QAspectEngine;
-class QCamera;
+class QAbstractAspect;
class QEntity;
}
namespace Qt3DRender {
+class QCamera;
class QFrameGraph;
class QRenderAspect;
}
@@ -72,8 +73,9 @@ public:
void registerAspect(const QString &name);
void setRootEntity(Qt3DCore::QEntity *root);
+ void setFrameGraph(Qt3DRender::QFrameGraph *frameGraph);
- Qt3DCore::QCamera *camera() const;
+ Qt3DRender::QCamera *camera() const;
public Q_SLOTS:
@@ -93,7 +95,7 @@ private:
// Renderer configuration
Qt3DRender::QFrameGraph *m_frameGraph;
- Qt3DCore::QCamera *m_defaultCamera;
+ Qt3DRender::QCamera *m_defaultCamera;
// Input configuration
diff --git a/examples/qt3d/materials-cpp/main.cpp b/examples/qt3d/materials-cpp/main.cpp
index f8b8afc66..245ff255c 100644
--- a/examples/qt3d/materials-cpp/main.cpp
+++ b/examples/qt3d/materials-cpp/main.cpp
@@ -38,7 +38,7 @@
#include <Qt3DCore/QEntity>
#include <Qt3DCore/QAspectEngine>
-#include <Qt3DCore/QCamera>
+#include <Qt3DRender/QCamera>
#include <Qt3DInput/QInputAspect>
@@ -48,33 +48,33 @@
#include <Qt3DRender/QForwardRenderer>
#include <Qt3DRender/QFrameGraph>
#include <Qt3DRender/QTextureImage>
-#include <Qt3DRender/QWindow>
#include "planeentity.h"
#include "rotatingtrefoilknot.h"
#include "barrel.h"
#include "houseplant.h"
+#include "qt3dwindow.h"
+#include "qfirstpersoncameracontroller.h"
int main(int argc, char* argv[])
{
QGuiApplication app(argc, argv);
- Qt3DRender::QWindow view;
- Qt3DInput::QInputAspect *input = new Qt3DInput::QInputAspect;
- view.registerAspect(input);
+ Qt3DWindow view;
// Scene Root
Qt3DCore::QEntity *sceneRoot = new Qt3DCore::QEntity();
// Scene Camera
- Qt3DCore::QCamera *basicCamera = view.defaultCamera();
- basicCamera->setProjectionType(Qt3DCore::QCameraLens::PerspectiveProjection);
+ Qt3DRender::QCamera *basicCamera = view.camera();
+ basicCamera->setProjectionType(Qt3DRender::QCameraLens::PerspectiveProjection);
basicCamera->setAspectRatio(view.width() / view.height());
basicCamera->setUpVector(QVector3D(0.0f, 1.0f, 0.0f));
basicCamera->setViewCenter(QVector3D(0.0f, 3.5f, 0.0f));
basicCamera->setPosition(QVector3D(0.0f, 3.5f, 25.0f));
// For camera controls
- input->setCamera(basicCamera);
+ Qt3DInput::QFirstPersonCameraController *camController = new Qt3DInput::QFirstPersonCameraController(sceneRoot);
+ camController->setCamera(basicCamera);
// Scene floor
PlaneEntity *planeEntity = new PlaneEntity(sceneRoot);
diff --git a/examples/qt3d/simple-cpp/main.cpp b/examples/qt3d/simple-cpp/main.cpp
index 990fd36bb..438c4b849 100644
--- a/examples/qt3d/simple-cpp/main.cpp
+++ b/examples/qt3d/simple-cpp/main.cpp
@@ -37,8 +37,8 @@
#include <QGuiApplication>
#include <Qt3DCore/QEntity>
-#include <Qt3DCore/QCamera>
-#include <Qt3DCore/QCameraLens>
+#include <Qt3DRender/QCamera>
+#include <Qt3DRender/QCameraLens>
#include <Qt3DCore/QTransform>
#include <Qt3DCore/QAspectEngine>
@@ -56,6 +56,7 @@
#include "qt3dwindow.h"
#include "orbittransformcontroller.h"
+#include "qfirstpersoncameracontroller.h"
Qt3DCore::QEntity *createScene()
{
@@ -112,12 +113,17 @@ int main(int argc, char* argv[])
QGuiApplication app(argc, argv);
Qt3DWindow view;
+ Qt3DCore::QEntity *scene = createScene();
+
// Camera
- Qt3DCore::QCamera *camera = view.camera();
+ Qt3DRender::QCamera *camera = view.camera();
camera->lens()->setPerspectiveProjection(45.0f, 16.0f/9.0f, 0.1f, 1000.0f);
camera->setPosition(QVector3D(0, 0, 40.0f));
- Qt3DCore::QEntity *scene = createScene();
+ // For camera controls
+ Qt3DInput::QFirstPersonCameraController *camController = new Qt3DInput::QFirstPersonCameraController(scene);
+ camController->setCamera(camera);
+
view.setRootEntity(scene);
view.show();