Qt3DRender::QSceneLoader Class
class Qt3DRender::QSceneLoaderPermet de charger une scène existante. En savoir plus...
| En-tête : | #include <qsceneloader.h> |
| CMake : | find_package(Qt6 REQUIRED COMPONENTS 3drender) target_link_libraries(mytarget PRIVATE Qt6::3drender) |
| qmake : | QT += 3drender |
| En QML : | SceneLoader |
| Hérite de : | Qt3DCore::QComponent |
| Statut : | Obsolète |
Cette classe est obsolète. Nous déconseillons fortement de l'utiliser dans du nouveau code.
- Liste de tous les membres, y compris les membres hérités
- QSceneLoader fait partie de la catégorie « Entrée/Sortie et réseau ».
Types publics
| enum | ComponentType { UnknownComponent, GeometryRendererComponent, TransformComponent, MaterialComponent, LightComponent, CameraLensComponent } |
| enum | Status { None, Loading, Ready, Error } |
Propriétés
Fonctions publiques
| QSceneLoader(Qt3DCore::QNode *parent = nullptr) | |
| Qt3DCore::QComponent * | component(const QString &entityName, Qt3DRender::QSceneLoader::ComponentType componentType) const |
| Qt3DCore::QEntity * | entity(const QString &entityName) const |
| QStringList | entityNames() const |
| QUrl | source() const |
| Qt3DRender::QSceneLoader::Status | status() const |
Emplacements publics
| void | setSource(const QUrl &arg) |
Signaux
| void | sourceChanged(const QUrl &source) |
| void | statusChanged(Qt3DRender::QSceneLoader::Status status) |
Description détaillée
À partir d’un fichier source 3D, le chargeur ( Qt3DRender::QSceneLoader ) tentera de l’analyser et de construire une arborescence d’objets « Qt3DCore::QEntity » avec les composants appropriés : « Qt3DRender::QGeometryRenderer », « Qt3DCore::QTransform » et « Qt3DRender::QMaterial ».
Le chargeur tentera de déterminer le meilleur matériau à utiliser en fonction des propriétés du fichier de modèle. Si vous souhaitez utiliser un matériau personnalisé, vous devrez parcourir l’arborescence et remplacer les matériaux par défaut associés par les vôtres.
Comme son nom l’indique, ` Qt3DRender::QSceneLoader ` charge une sous-arborescence complète de la scène. Si vous souhaitez charger un seul élément géométrique, vous devriez plutôt utiliser la fonction ` Qt3DRender::QMesh `.
Qt3DRender::QSceneLoader S'appuie en interne sur l'utilisation de plugins pour prendre en charge une grande variété de formats de fichiers 3D. Voici une liste des formats pris en charge par Qt3D.
Remarque : ce composant ne doit pas être partagé entre plusieurs instances d'Qt3DCore::QEntity. Cela entraînerait un comportement indéfini.
Voir également Qt3DRender::QMesh et Qt3DRender::QGeometryRenderer.
Documentation sur les types de membres
enum QSceneLoader::ComponentType
Cette énumération spécifie un type de composant.
| Constante | Valeur | Description |
|---|---|---|
Qt3DRender::QSceneLoader::UnknownComponent | 0 | Type de composant inconnu |
Qt3DRender::QSceneLoader::GeometryRendererComponent | 1 | Composant Qt3DRender::QGeometryRenderer |
Qt3DRender::QSceneLoader::TransformComponent | 2 | Composant Qt3DCore::QTransform |
Qt3DRender::QSceneLoader::MaterialComponent | 3 | Composant Qt3DRender::QMaterial |
Qt3DRender::QSceneLoader::LightComponent | 4 | Composant Qt3DRender::QAbstractLight |
Qt3DRender::QSceneLoader::CameraLensComponent | 5 | Composant Qt3DRender::QCameraLens |
enum QSceneLoader::Status
Cette énumération identifie l'état de chargement
| Constante | Valeur | Description |
|---|---|---|
Qt3DRender::QSceneLoader::None | 0 | L'Qt3DRender::QSceneLoader n'a pas encore été utilisé. |
Qt3DRender::QSceneLoader::Loading | 1 | L'Qt3DRender::QSceneLoader est en train de charger le fichier de scène. |
Qt3DRender::QSceneLoader::Ready | 2 | L'Qt3DRender::QSceneLoader a chargé le fichier de scène avec succès. |
Qt3DRender::QSceneLoader::Error | 3 | L'Qt3DRender::QSceneLoader a rencontré une erreur lors du chargement du fichier de scène. |
Documentation des propriétés
source : QUrl
Contient l'URL de la source à charger.
Fonctions d'accès :
| QUrl | source() const |
| void | setSource(const QUrl &arg) |
Signal de notification :
| void | sourceChanged(const QUrl &source) |
[read-only] status : Status
Contient l'état du chargement de la scène.
- SceneLoader.None
- SceneLoader.Loading
- SceneLoader.Ready
- SceneLoader.Error
Fonctions d'accès :
| Qt3DRender::QSceneLoader::Status | status() const |
Signal Notifier :
| void | statusChanged(Qt3DRender::QSceneLoader::Status status) |
Voir aussi Qt3DRender::QSceneLoader::Status.
Documentation des fonctions membres
[explicit] QSceneLoader::QSceneLoader(Qt3DCore::QNode *parent = nullptr)
Le constructeur crée une instance avec l'parent spécifiée.
[invokable] Qt3DCore::QComponent *QSceneLoader::component(const QString &entityName, Qt3DRender::QSceneLoader::ComponentType componentType) const
Renvoie un composant dont la propriété « componentType » correspond à celle d’une entité chargée, et dont le nom (« objectName ») correspond à celui de entityName. Si l’entité comporte plusieurs composants correspondants, c’est le premier élément de la liste des composants de l’entité qui est renvoyé. En l’absence de correspondance, un pointeur null est renvoyé.
Remarque : cette fonction peut être appelée via le système de méta-objets et depuis QML. Voir Q_INVOKABLE.
[invokable] Qt3DCore::QEntity *QSceneLoader::entity(const QString &entityName) const
Renvoie une entité chargée dont l'objectName correspond au paramètre entityName. Si plusieurs entités portent le même nom, il n'est pas défini laquelle d'entre elles sera renvoyée, mais ce sera toujours la même.
Remarque : cette fonction peut être appelée via le système de méta-objets et depuis QML. Voir Q_INVOKABLE.
[invokable] QStringList QSceneLoader::entityNames() const
Renvoie une liste des « objectNames » des entités chargées.
Remarque : cette fonction peut être appelée via le système de méta-objets et depuis QML. Voir Q_INVOKABLE.
© 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.