diff options
author | Paul Lemire <paul.lemire@kdab.com> | 2014-09-29 17:19:36 +0200 |
---|---|---|
committer | Sean Harmer <sean.harmer@kdab.com> | 2014-10-03 21:18:41 +0200 |
commit | 7b26f6a1746419161a8f875e341b3e31220f4141 (patch) | |
tree | f784e568015e1f7f199abb388b97fefdb158c84e /examples/cylinder-cpp | |
parent | c16689bb1ccf31416df7b8c69fe032898cf87dec (diff) |
QNode refactoring
Move almost everything to private classes.
Assimp loading restored.
All examples working.
QNode hierachy is now handled through QObject::setParent, addChild,
removeChild are part of the private api.
Note: commented QChangeArbiter unit tests as they can no longer work with this
patch and will restore them when QChangeArbiter will have been made private.
Task-number: QTBUG-41470
Task-number: QTBUG-41523
Change-Id: I4430974b3aa7f3744c38714b451b122e0cb4d0c9
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
Diffstat (limited to 'examples/cylinder-cpp')
-rw-r--r-- | examples/cylinder-cpp/main.cpp | 20 |
1 files changed, 6 insertions, 14 deletions
diff --git a/examples/cylinder-cpp/main.cpp b/examples/cylinder-cpp/main.cpp index 090d506fc..6880a1bb8 100644 --- a/examples/cylinder-cpp/main.cpp +++ b/examples/cylinder-cpp/main.cpp @@ -78,7 +78,7 @@ int main(int argc, char **argv) Qt3D::QEntity *rootEntity = new Qt3D::QEntity(); // Camera - Qt3D::QCamera *cameraEntity = new Qt3D::QCamera(); + Qt3D::QCamera *cameraEntity = new Qt3D::QCamera(rootEntity); cameraEntity->setObjectName(QStringLiteral("cameraEntity")); Qt3D::QCameraLens *cameraLens = new Qt3D::QCameraLens(); Qt3D::QTransform *cameraTransform = new Qt3D::QTransform(); @@ -96,20 +96,16 @@ int main(int argc, char **argv) // FrameGraph Qt3D::QFrameGraph *frameGraph = new Qt3D::QFrameGraph(); Qt3D::QTechniqueFilter *techniqueFilter = new Qt3D::QTechniqueFilter(); - Qt3D::QCameraSelector *cameraSelector = new Qt3D::QCameraSelector(); - Qt3D::QRenderPassFilter *defaultRenderPassFilter = new Qt3D::QRenderPassFilter(); - Qt3D::QViewport *viewport = new Qt3D::QViewport(); - Qt3D::QClearBuffer *clearBuffer = new Qt3D::QClearBuffer(); + Qt3D::QViewport *viewport = new Qt3D::QViewport(techniqueFilter); + Qt3D::QClearBuffer *clearBuffer = new Qt3D::QClearBuffer(viewport); + Qt3D::QCameraSelector *cameraSelector = new Qt3D::QCameraSelector(clearBuffer); + Qt3D::QRenderPassFilter *defaultRenderPassFilter = new Qt3D::QRenderPassFilter(cameraSelector); // TechiqueFilter and renderPassFilter are not implement yet viewport->setRect(QRectF(0, 0, 1, 1)); - viewport->addChild(clearBuffer); clearBuffer->setBuffers(Qt3D::QClearBuffer::ColorDepthBuffer); - clearBuffer->addChild(cameraSelector); cameraSelector->setCamera(cameraEntity); - cameraSelector->addChild(defaultRenderPassFilter); - techniqueFilter->addChild(viewport); frameGraph->setActiveFrameGraph(techniqueFilter); @@ -134,17 +130,13 @@ int main(int argc, char **argv) cylinderTransforms->appendTransform(cylinderRotation); // Cylinder - Qt3D::QEntity *cylinderEntity = new Qt3D::QEntity(); + Qt3D::QEntity *cylinderEntity = new Qt3D::QEntity(rootEntity); cylinderEntity->addComponent(cylinder); cylinderEntity->addComponent(cylinderTransforms); // Setting the FrameGraph rootEntity->addComponent(frameGraph); - // Build Node Tree - rootEntity->addChild(cameraEntity); - rootEntity->addChild(cylinderEntity); - // Set root object of the scene view.setRootObject(rootEntity); // Show window |