Qt Quick 3D - Exemple de sous-maillage
Illustre comment attribuer des matériaux à des sous-maillages.

Cet exemple montre comment les matériaux et les sous-maillages sont mis en correspondance.
Sous-maillages et matériaux
Lorsqu’un « Model » est constitué de deux maillages ou plus, ces maillages sont appelés sous-maillages. Chaque sous-maillage peut avoir son propre matériau, mais il n’est pas nécessaire de fournir plus d’un matériau par modèle. S’il y a plus de sous-maillages que de matériaux, le dernier matériau de la liste d’ materials s est alors utilisé pour tous les sous-maillages restants. Lorsqu’un modèle comporte un matériau par sous-maillage, ceux-ci sont mis en correspondance de manière biunivoque : le premier matériau de la liste est appliqué au premier sous-maillage, le deuxième au deuxième, et ainsi de suite. L’ordre des sous-maillages dans un modèle dépend de la manière dont celui-ci a été créé et exporté par l’outil de modélisation 3D utilisé pour le créer.
L'exemple suivant montre deux cubes déformés dont chaque face constitue un sous-maillage distinct.
Si l’on observe le cube de gauche, on constate qu’une de ses faces est de couleur rouge tandis que les autres sont vertes; cela s’explique bien sûr par le fait que le modèle ne comporte que deux matériaux, à savoir un rouge et un vert. Dans notre modèle, le premier sous-maillage correspond justement à la face « supérieure » du cube déformé, et comme le matériau rouge est le premier de la liste des matériaux, il prend la couleur rouge comme prévu. Le deuxième matériau de la liste est le matériau vert, qui est appliqué au deuxième sous-maillage, c'est-à-dire la face « avant » du cube déformé ; comme il s'agit du dernier matériau de la liste, il sera également utilisé pour toutes les autres faces du cube déformé.

DistortedCube {
x: -4
scale: Qt.vector3d(2, 2, 2)
materials: [ PrincipledMaterial {
baseColor: "red"
lighting: PrincipledMaterial.NoLighting
},
PrincipledMaterial {
baseColor: "green"
lighting: PrincipledMaterial.NoLighting
} ]En observant le cube à droite, on constate qu’il a été doté de couleurs supplémentaires ; cela s’explique bien sûr par le fait que nous avons désormais attribué un matériau à chacune des six sous-maillages, chacun avec une couleur différente.

Model {
source: "qrc:/meshes/distortedcube.mesh"
PrincipledMaterial {
id: frontTop_material
baseColor: "red"
cullMode: Material.NoCulling
lighting: PrincipledMaterial.NoLighting
}
PrincipledMaterial {
id: frontBottom_material
baseColor: "green"
cullMode: Material.NoCulling
lighting: PrincipledMaterial.NoLighting
}
PrincipledMaterial {
id: leftSide_material
baseColor: "blue"
cullMode: Material.NoCulling
lighting: PrincipledMaterial.NoLighting
}
PrincipledMaterial {
id: rightSide_material
baseColor: "pink"
cullMode: Material.NoCulling
lighting: PrincipledMaterial.NoLighting
}
PrincipledMaterial {
id: backSide_material
baseColor: "orange"
cullMode: Material.NoCulling
lighting: PrincipledMaterial.NoLighting
}
PrincipledMaterial {
id: bottomSide_material
baseColor: "navy"
cullMode: Material.NoCulling
lighting: PrincipledMaterial.NoLighting
}
materials: [
frontTop_material,
frontBottom_material,
leftSide_material,
backSide_material,
rightSide_material,
bottomSide_material
]
}© 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.