Qt 3D
Qt 3D provides functionality for near-realtime simulation systems with support for 2D and 3D rendering in both Qt C++ and Qt Quick applications.
The functionality in Qt 3D is divided into the following C++ modules:
Qt 3D module contains functionality to support near-realtime simulation systems | |
Qt 3D Input module provides classes for handling user input in applications using Qt3D | |
Qt 3D Logic module enables synchronizing frames with the Qt 3D backend | |
Qt 3D Render module contains functionality to support 2D and 3D rendering using Qt 3D |
For Qt Quick applications, Qt 3D provides the following QML modules:
Provides QML types for Qt 3D user input | |
Provides QML types to synchronize frames with the 3D backend | |
Provides core Qt 3D QML types | |
Provides Qt 3D QML types for rendering |
Getting Started
For a C++ application that performs 2D or 3D rendering, collision detection, and also handle user input, add the following line to its qmake .pro
file:
QT += 3dcore 3drender 3dinput 3dlogic
To include the definitions of the modules' classes, use the following directives:
#include <Qt3DCore> #include <Qt3DRender> #include <Qt3DInput> #include <Qt3DLogic>
A Qt Quick application requires also additional dependencies:
QT += 3dcore 3drenderer 3dinput qml quick 3dquick
Overview
The high level design and motivation for Qt 3D is described in the Qt 3D Overview. The Qt 3D Render aspect offers support for data-driven configuration as described in Qt 3D Render Framegraph.
Reference
Qt 3D Platform Support
In this Technology Preview Qt 3D has the following support for platforms:
- Microsoft Windows (win32) - Supported
- Linux X11 - Supported
- macOS - Supported although there may be some retina scaling issues
- Android - Supported
- Embedded Linux - Supported
- iOS - Not supported yet (coming in Qt 5.6)
- WinRT - Not supported yet
- Windows CE - Compiles but not tested
© 2017 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.