ModelParticle3D QML Type
Particule utilisant un modèle 3D « Qt Quick ». En savoir plus...
| Import Statement: | import QtQuick3D.Particles3D |
| Since: | Qt 6.2 |
| Inherits: |
Propriétés
- delegate : Component
- instanceTable : Instancing
Description détaillée
ModelParticle3D est un élément de particule logique qui crée des particules à partir d'un composant Model 3D d'Qt Quick.
Documentation des propriétés
delegate : Component
Le délégué fournit un modèle définissant chaque objet instancié par la particule.
Par exemple, pour allouer 200 particules de cubes rouges :
Component {
id: particleComponent
Model {
source: "#Cube"
scale: Qt.vector3d(0.2, 0.2, 0.2)
materials: DefaultMaterial { }
}
}
ModelParticle3D {
id: particleRed
delegate: particleComponent
maxAmount: 200
color: "#ff0000"
}Remarque : le contenu instancié à partir du délégué conserve sa propre affectation d'layers; la valeur « layers » de l'ParticleSystem3D ne lui est pas appliquée. Pour afficher les particules sur un calque de contenu spécifique, définissez la propriété « layers » sur les nœuds du délégué.
instanceTable : Instancing
La propriété `instanceTable` permet d'accéder à la table d'instances ( Instancing ) de la particule du modèle. ` ModelParticle3D ` utilise une table d'instances interne pour assurer un rendu efficace. Cette table peut être appliquée à la propriété ` instancing ` des modèles qui ne font pas partie du système de particules.
Il est également possible d’utiliser cette fonctionnalité pour fournir une table d’instanciation sans afficher aucune particule. Pour ce faire, il suffit d’omettre la propriété ` delegate `. Par exemple :
ParticleSystem3D {
id: psystem
ModelParticle3D {
id: particleRed
maxAmount: 200
color: "#ff0000"
colorVariation: Qt.vector4d(0.5,0.5,0.5,0.5)
}
ParticleEmitter3D {
particle: particleRed
velocity: VectorDirection3D {
direction: Qt.vector3d(-20, 200, 0)
directionVariation: Qt.vector3d(20, 20, 20)
}
particleScale: 0.2
emitRate: 20
lifeSpan: 2000
}
}
Model {
source: "#Sphere"
instancing: particleRed.instanceTable
materials: PrincipledMaterial {
baseColor: "yellow"
}
}© 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.