summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/quick3d/quick3d/qqmlaspectengine.cpp5
-rw-r--r--src/quick3d/quick3d/qqmlaspectengine.h1
2 files changed, 6 insertions, 0 deletions
diff --git a/src/quick3d/quick3d/qqmlaspectengine.cpp b/src/quick3d/quick3d/qqmlaspectengine.cpp
index cf2372ca5..d7e540c42 100644
--- a/src/quick3d/quick3d/qqmlaspectengine.cpp
+++ b/src/quick3d/quick3d/qqmlaspectengine.cpp
@@ -133,6 +133,11 @@ void QQmlAspectEnginePrivate::_q_continueExecute()
return;
}
+ // Let users know we have loaded the QML file, and the scene has been instantiated.
+ // This gives a chance to manipulate the scene before passing it over to the
+ // aspect engine. Useful for convenience window classes to set up cameras and surfaces
+ // on the framegraph and event sources for the input aspect etc.
+ emit q->sceneCreated(obj);
m_aspectEngine->setRootEntity(qobject_cast<QEntity *>(obj));
emit q->statusChanged(q->status());
}
diff --git a/src/quick3d/quick3d/qqmlaspectengine.h b/src/quick3d/quick3d/qqmlaspectengine.h
index 7f742e83f..b94c6ab10 100644
--- a/src/quick3d/quick3d/qqmlaspectengine.h
+++ b/src/quick3d/quick3d/qqmlaspectengine.h
@@ -64,6 +64,7 @@ public:
Q_SIGNALS:
void statusChanged(Status);
+ void sceneCreated(QObject* rootObject);
private:
Q_DECLARE_PRIVATE(QQmlAspectEngine)