I want to move my framegraph from C++ to QML. My first step is to reproduce
what's already happening with the forward renderer.

If I use a QQmlAspectEngine, should I be able to just swap out parts of the
node hierarchy for Quick3D nodes while leaving other parts C++?

For example, here is the normal tree with a forward renderer & it works:

Debug: Qt3DRender::QRenderSettings::     (:0, (null))
Debug:     Qt3DRender::QRenderCapture::     (:0, (null))
Debug:         Qt3DExtras::QForwardRenderer::Forward Renderer     (:0,
(null))
Debug:             Qt3DRender::QRenderSurfaceSelector::     (:0, (null))
Debug:                 Qt3DRender::QViewport::     (:0, (null))
Debug:                     Qt3DRender::QCameraSelector::     (:0, (null))
Debug:                         Qt3DRender::QClearBuffers::     (:0, (null))
Debug:                             Qt3DRender::QFrustumCulling::     (:0,
(null))
Debug:             Qt3DRender::QFilterKey::     (:0, (null))

Then I switch out the C++ for the QML (and use setContextProperty() to
point at my C++ camera):

Debug: Qt3DRender::QRenderSettings::     (:0, (null))
Debug:     Qt3DRender::QRenderCapture::     (:0, (null))
Debug:         Qt3DRender::Render::Quick::Quick3DTechniqueFilter::     (:0,
(null))
Debug:             Qt3DCore::Quick::Quick3DNodeV9::     (:0, (null))
Debug:             Qt3DRender::QRenderSurfaceSelector::     (:0, (null))
Debug:                 Qt3DCore::Quick::Quick3DNodeV9::     (:0, (null))
Debug:                 Qt3DRender::Render::Quick::Quick3DViewport::
(:0, (null))
Debug:                     Qt3DCore::Quick::Quick3DNodeV9::     (:0, (null))
Debug:                     Qt3DCore::Quick::Quick3DNode::     (:0,
(null))           [Note: this is the CameraSelector/camera]
Debug:                         Qt3DCore::Quick::Quick3DNode::     (:0,
(null))
Debug:                         Qt3DRender::QClearBuffers::     (:0, (null))
Debug:                             Qt3DCore::Quick::Quick3DNodeV9::
(:0, (null))
Debug:                             Qt3DRender::QFrustumCulling::     (:0,
(null))
Debug:             Qt3DRender::Render::Quick::Quick3DRenderPassFilter::
(:0, (null))
Debug:                 Qt3DRender::Render::Quick::Quick3DRenderPassFilter::
    (:0, (null))
Debug:                 Qt3DRender::QFilterKey::     (:0, (null))

This doesn't work - doesn't render anything - am I supposed to be able to
do this? If so is there anything else I'm supposed to do to tell the engine
to use both?

(I'm using Qt 5.10.1 on macOS.)

Thank you for any insights.

---
Andy Maloney  //  https://asmaloney.com
twitter ~ @asmaloney <https://twitter.com/asmaloney>
_______________________________________________
Interest mailing list
Interest@qt-project.org
http://lists.qt-project.org/mailman/listinfo/interest

Reply via email to