Sur cette page

Qt 3D

Qt 3D fournit des fonctionnalités pour les systèmes de simulation en temps quasi réel avec prise en charge du rendu 2D et 3D dans les applications Qt C++ et Qt Quick.

Les fonctionnalités de Qt 3D sont réparties dans les modules C++ suivants :

Les modules C++ suivants sont encore en cours de développement mais sont disponibles en tant qu'aperçus technologiques :

Pour les applications Qt Quick, Qt 3D fournit les modules QML suivants :

Les modules QML suivants sont en cours de développement mais sont disponibles en avant-première :

Utilisation du module

Pour une application C++ qui effectue un rendu 2D ou 3D, une détection des collisions et gère les entrées de l'utilisateur, incluez les directives suivantes dans les classes des modules :

#include <Qt3DCore>
#include <Qt3DRender>
#include <Qt3DInput>
#include <Qt3DLogic>
#include <Qt3DExtras>
#include <Qt3DAnimation>

Pour importer les types QML dans votre application, utilisez l'instruction d'importation suivante dans votre fichier .qml :

import Qt3D.Core
import Qt3D.Render
import Qt3D.Input
import Qt3D.Logic
import Qt3D.Extras
import Qt3D.Animation
import QtQuick.Scene2D
import QtQuick.Scene3D

L'utilisation de l'API C++ d'un module Qt nécessite l'établissement d'un lien avec la bibliothèque du module, soit directement, soit par l'intermédiaire d'autres dépendances. Plusieurs outils de construction disposent d'un support dédié à cet effet, notamment CMake et qmake.

Construction avec CMake

Utilisez la commande find_package() pour localiser les composants de module nécessaires dans le paquet Qt6:

find_package(Qt6 REQUIRED COMPONENTS
    3DCore
    3DRender
    3DInput
    3DLogic
    3DExtras
    3DAnimation
)
target_link_libraries(mytarget PRIVATE
    Qt6::3DCore
    Qt6::3DRender
    Qt6::3DLogic
    Qt6::3DExtras
    Qt6::3DAnimation
)

Construction avec qmake

Pour configurer le module en vue de sa construction avec qmake, ajoutez les modules à la variable QT dans le fichier .pro du projet :

QT += 3dcore 3drender 3dinput 3dlogic 3dextras 3danimation

Une application Qt Quick nécessite des dépendances supplémentaires :

QT += 3dcore 3drender 3dinput 3dlogic 3dextras 3danimation qml quick 3dquick

Vue d'ensemble

La conception de haut niveau et la motivation de Qt 3D sont décrites dans l'aperçu deQt 3D . Qt 3D Render prend en charge la configuration basée sur les données, comme décrit dans Qt 3D Render Framegraph.

Référence

Qt 3D Prise en charge des plates-formes

Qt 3D est compatible avec les plates-formes suivantes :

  • Microsoft Windows (win32) - Pris en charge
  • Linux X11 - Pris en charge
  • macOS - Pris en charge, bien qu'il puisse y avoir des problèmes de mise à l'échelle de la rétine
  • Android - Pris en charge
  • Linux embarqué - pris en charge
  • iOS - pris en charge depuis (Qt 5.7)
  • WinRT - Pas encore supporté

Évolution des modules

Changes to Qt3D liste les changements importants dans l'API et les fonctionnalités du module qui ont été faits pour la série Qt 6 de Qt.

Licences et attributions

Qt 3D Qt3D est disponible sous licence commerciale auprès de The Qt Company. En outre, il est disponible sous la licence publique générale amoindrie de GNU, version 3, ou la licence publique générale de GNU, version 2. Voir Qt Licensing pour plus de détails.

En outre, Qt 3D contient des modules de tiers sous les licences permissives suivantes :

Dear ImGui - ProggyClean.ttf

Licence MIT

Dear ImGui - stb

Licence MIT ou domaine public

Dear ImGui, version v1.91.0

Licence MIT

Open Asset Import Library, version 6.0.4

Licence BSD 3 clauses "nouvelle" ou "révisée".

© 2026 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.