Learn what Felgo offers to help your business succeed. Start your free evaluation today! Felgo for Your Business

Qt Quick 3D

Qt Quick 3D provides a high-level API for creating 3D content and 3D user interfaces based on Qt Quick. Rather than using an external engine, which creates syncing issues and additional layers of abstraction, Qt Quick 3D provides extensions to the existing Qt Quick Scene Graph for spatial content and a renderer for that extended scene graph. When using the spatial scene graph, it's possible to mix Qt Quick 2D content with 3D content.

Using the Module

QML API

The QML types of the module are available through the QtQuick3D import. To use the types, add the following import statement to your .qml file:

import QtQuick3D

The following module imports provide additional functionality:

import QtQuick3D.Effects
import QtQuick3D.AssetUtils
import QtQuick3D.Helpers
import QtQuick3D.Particles3D

C++ API

Using a Qt module requires linking against the module library, either directly or through other dependencies. Several build tools have dedicated support for this, including CMake and qmake.

Building with CMake

Use the find_package() command to locate the needed module component in the Qt6 package:

find_package(Qt6 REQUIRED COMPONENTS Quick3D)
target_link_libraries(mytarget PRIVATE Qt6::Quick3D)

For more details, see the Build with CMake overview.

Building with qmake

To configure the module for building with qmake, add the module as a value of the QT variable in the project's .pro file:

QT += quick3d

Building From Source

When building from source, ensure that the modules and tools from the qtdeclarative and qtshadertools repositories are built first, as it's not possible to use Qt Quick 3D without these. Having qtquicktimeline available is strongly recommended as well, since keyframe-based animations will not be available otherwise.

In addition, some of the examples rely on Qt Quick Controls.

Module Evolution

Changes to Qt Quick 3D lists important changes in the module API and functionality that were done for the Qt 6 series of Qt.

Articles and Guides

Examples

Reference

Licenses and Attributions

Qt Quick 3D is available under the commercial license from The Qt Company. In addition, it is available under the GNU General Public License, version 3. See Qt Licensing for further details.

Furthermore, Qt Quick 3D potentially contains third party modules under the following permissive licenses:

Intel Embree, version 3.13.3

Apache License 2.0

Open Asset Import Library, version 5.2.3

BSD 3-clause "New" or "Revised" Licensee

ProceduralSky

MIT License

Tiny OpenEXR, version v1.0.1

BSD 3-clause "New" or "Revised" License

xatlas, version 16ace528acd2cf1f16a7c0dde99c42c486488dbe

MIT License

Qt_Technology_Partner_RGB_475 Qt_Service_Partner_RGB_475_padded