How qt/qt3d works
Qt3D is a C++ and QML 3D application framework. Its principal workflow creates a scene from application-authored nodes or a QML component, gives that scene to the aspect engine, and runs domain aspects that support rendering and other scene behavior. The tree also identifies input, animation, geometry loading, and convenience APIs as product capabilities. The QML-to-engine handoff is explicit in sampled source; other backend links reflect the documented framework structure and available module paths, not inspected call sites.
Main entry points: qentity.cpp Entity scene · qaspectengine.cpp Aspect engine · qqmlaspectengine.cpp QML aspect engine · CMakeLists.txt Render aspect
Components 19
Application API
- QML aspect engine
src/quick3d/quick3d/qqmlaspectengine.cpp - Entity scene
src/core/nodes/qentity.cpp
Scene Runtime
- Aspect engine
src/core/aspects/qaspectengine.cpp - Scene state
src/core/qscene.cpp - Aspect manager
src/core/aspects/qaspectmanager.cpp - Core aspect
src/core/aspect/qcoreaspect.cpp - Resource manager
src/core/resources/qresourcemanager_p.h
Scene Capabilities
- Input aspect
src/input/frontend/qinputaspect.cpp - Animation aspect
src/animation/frontend/qanimationaspect.cpp - Animation controller
src/animation/frontend/qanimationcontroller.cpp - Geometry API
src/core/geometry/qgeometry.cpp - Geometry loaders
src/plugins/geometryloaders/default/basegeometryloader.cpp
Rendering
- Render aspect
src/render/CMakeLists.txt - Render resources
src/render/backend/managers_p.h - Shader resources
src/plugins/renderers/rhi/renderer/pipelineuboset.cpp
Convenience APIs
- Extras APIs
src/extras/defaults/qforwardrenderer.cpp - Camera controller
src/extras/defaults/qabstractcameracontroller.cpp
Other components
- Qt3D application
- Graphics device
Connections 19
- Qt3D application → QML aspect engine: sets QML source
- Qt3D application → Entity scene: creates nodes
- QML aspect engine → Entity scene: instantiates
- QML aspect engine → Aspect engine: sets root entity
- Aspect engine → Scene state: initializes scene
- Aspect engine → Aspect manager: initializes aspects
- Aspect engine → Entity scene: registers root
- Entity scene → Core aspect: scene nodes
- Entity scene → Input aspect: scene nodes
- Entity scene → Animation aspect: scene nodes
- Entity scene → Render aspect: scene nodes
- Animation controller → Animation aspect: controls playback
- Geometry loaders → Geometry API: loads geometry
- Render aspect → Render resources: uses resources
- Render resources → Resource manager: manages resources
- Shader resources → Graphics device: binds shader resources
- Extras APIs → Render aspect: provides renderer
- Camera controller → Input aspect: configures controls
- Camera controller → Extras APIs: controls camera