ProceduralTextureData QML Type
Permet de créer et de remplir des objets « TextureData » à partir de QML. En savoir plus…
| Import Statement: | import QtQuick3D.Helpers |
| Since: | Qt 6.6 |
| Inherits: |
Propriétés
- depth : int
- format : enumeration
- hasTransparency : bool
- height : int
- textureData : ArrayBuffer
- width : int
Description détaillée
ProceduralTextureData est un type d’aide permettant de créer des données de texture procédurales ( TextureData ) à partir de QML. Le composant TextureData est abstrait et est généralement créé en C++. Grâce à ProceduralTextureData, il est possible de remplir un TextureData à partir de QML.
ProceduralTextureData {
id: dynamicTextureData
property color color1: "red"
property color color2: "black"
width: 32
height: 32
hasTransparency: false
format: TextureData.RGBA8
textureData: generateTextureData(color1, color2)
function generateTextureData(newColor1: color, newColor2 : color) : ArrayBuffer {
let dataBuffer = new ArrayBuffer(width * height * 4)
let data = new Uint8Array(dataBuffer)
// Create a checkered pattern using newColor1 and newColor2
for (let x = 0; x < width; x++) {
for (let y = 0; y < height; y++) {
let index = (x + y * width) * 4
let color = (x % 2 === y % 2) ? newColor1 : newColor2
data[index + 0] = color.r * 255
data[index + 1] = color.g * 255
data[index + 2] = color.b * 255
data[index + 3] = 255
}
}
return dataBuffer
}
}Dans l'extrait de code ci-dessus, la fonction `generateTextureData` est utilisée pour générer un motif en damier à l'aide des deux couleurs `color1` et `color2`. En remplissant un `ArrayBuffer` avec les données générées, la propriété ` textureData ` de l'TextureData est renseignée.
Documentation des propriétés
depth : int [default: 0]
Cette propriété indique la profondeur des données de texture en pixels. Si la profondeur est supérieure à 0, la texture est traitée comme une texture 3D.
format : enumeration [default: TextureData.RGBA8]
Cette propriété définit le format des données de texture.
| Constante | Description |
|---|---|
TexureData.None | Le format de couleur n'est pas défini |
TexureData.RGBA8 | Le format de couleur est considéré comme un entier de 8 bits dans les canaux R, G, B et alpha. |
TexureData.RGBA16F | Le format de couleur est considéré comme un nombre à virgule flottante de 16 bits dans les canaux R, G, B et alpha. |
TexureData.RGBA32F | Le format de couleur est considéré comme un nombre à virgule flottante de 32 bits dans les canaux R, G, B et alpha. |
TexureData.RGBE8 | Le format de couleur est considéré comme une mantisse de 8 bits dans les canaux R, G et B, avec un exposant partagé de 8 bits. |
TexureData.R8 | Le format de couleur est considéré comme un entier de 8 bits dans le canal R. |
TexureData.R16 | Le format de couleur est considéré comme un entier de 16 bits dans le canal R. |
TexureData.R16F | Le format de couleur est considéré comme un nombre à virgule flottante de 16 bits dans le canal R. |
TexureData.R32F | Le format de couleur est considéré comme un nombre à virgule flottante de 32 bits dans le canal R. |
TexureData.BC1 | Le format de couleur est considéré comme un format compressé BC1 avec les canaux R, G, B et alpha. |
TexureData.BC2 | Le format de couleur est considéré comme un format compressé BC2 avec les canaux R, G, B et alpha. |
TexureData.BC3 | Le format de couleur est considéré comme un format compressé BC3 avec les canaux R, G, B et alpha. |
TexureData.BC4 | Le format de couleur est considéré comme un format compressé BC4 avec un canal de couleur. |
TexureData.BC5 | Le format de couleur est considéré comme un format compressé BC5 avec deux canaux de couleur. |
TexureData.BC6H | Le format de couleur est considéré comme un format compressé BC6H avec trois canaux de couleur à plage dynamique élevée. |
TexureData.BC7 | Le format de couleur est considéré comme un format compressé BC7 avec des canaux R, G, B et alpha. |
TexureData.DXT1_RGBA | Le format de couleur est considéré comme un format compressé DXT1 avec des canaux R, G, B et alpha. |
TexureData.DXT1_RGB | Le format couleur est considéré comme un format compressé DXT1 avec des canaux R, G et B. |
TexureData.DXT3_RGBA | Le format de couleur est considéré comme un format compressé DXT3 avec des canaux R, G, B et alpha. |
TexureData.DXT5_RGBA | Le format de couleur est considéré comme un format compressé DXT5 avec des canaux R, G, B et alpha. |
TexureData.ETC2_RGB8 | Le format couleur est considéré comme un format compressé ETC2 pour les données RGB888 |
TexureData.ETC2_RGB8A1 | Le format de couleur est considéré comme un format compressé ETC2 pour les données RGBA où le canal alpha est à 1 bit. |
TexureData.ETC2_RGBA8 | Le format de couleur est considéré comme un format compressé ETC2 avec des données RGBA8888. |
TexureData.ASTC_4x4 | Le format couleur est considéré comme un format compressé ASTC avec une empreinte de bloc 4x4. |
TexureData.ASTC_5x4 | Le format de couleur est considéré comme un format compressé ASTC avec une taille de bloc de 5x4. |
TexureData.ASTC_5x5 | Le format de couleur est considéré comme un format compressé ASTC avec une taille de bloc de 5x5. |
TexureData.ASTC_6x5 | Le format de couleur est considéré comme un format compressé ASTC avec une taille de bloc de 6x5. |
TexureData.ASTC_6x6 | Le format de couleur est considéré comme un format compressé ASTC avec une taille de bloc de 6x6. |
TexureData.ASTC_8x5 | Le format couleur est considéré comme un format compressé ASTC avec une empreinte de blocs de 8x5. |
TexureData.ASTC_8x6 | Le format couleur est considéré comme un format compressé ASTC avec une empreinte de blocs de 8x6. |
TexureData.ASTC_8x8 | Le format couleur est considéré comme un format compressé ASTC avec une empreinte de blocs de 8x8. |
TexureData.ASTC_10x5 | Le format couleur est considéré comme un format compressé ASTC avec une empreinte de blocs de 10x5. |
TexureData.ASTC_10x6 | Le format couleur est considéré comme un format compressé ASTC avec une empreinte de blocs de 10x6. |
TexureData.ASTC_10x8 | Le format couleur est considéré comme un format compressé ASTC avec une empreinte de blocs de 10x8. |
TexureData.ASTC_10x10 | Le format couleur est considéré comme un format compressé ASTC avec une empreinte de blocs de 10x10. |
TexureData.ASTC_12x10 | Le format couleur est considéré comme un format compressé ASTC avec une empreinte de blocs de 12x10. |
TexureData.ASTC_12x12 | Le format couleur est considéré comme un format compressé ASTC avec une empreinte de blocs de 12x12. Remarque : à l'exception de Remarque : le format « Remarque : l’utilisation de la valeur |
hasTransparency : bool
Cette propriété indique si les données de texture comportent de la transparence.
height : int [default: 0]
Cette propriété contient la hauteur des données de texture, exprimée en pixels.
textureData : ArrayBuffer
Cette propriété contient les données de texture.
width : int [default: 0]
Cette propriété indique la largeur des données de texture en pixels.
© 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.