ProceduralTextureData QML Type
QMLからTextureData の作成およびデータの設定を可能にします。詳細...
| Import Statement: | import QtQuick3D.Helpers |
| Since: | Qt 6.6 |
| Inherits: |
プロパティ
- depth : int
- format : enumeration
- hasTransparency : bool
- height : int
- textureData : ArrayBuffer
- width : int
詳細な説明
ProceduralTextureData は、QML から `TextureData ` を作成できるようにするヘルパー型です。TextureData コンポーネントは抽象クラスであり、通常は C++ から作成されます。ProceduralTextureData を使用することで、QML から `TextureData ` にデータを設定することが可能になります。
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
}
}上記のコードスニペットでは、関数 `generateTextureData` を使用して、2つの色 `color1` と `color2` を用いたチェッカーボードパターンを生成しています。生成されたデータを `ArrayBuffer` に格納することで、TextureData の `textureData ` プロパティにデータが設定されます。
プロパティのドキュメント
depth : int [default: 0]
このプロパティは、テクスチャデータの深度(ピクセル単位)を保持します。深度を 0 より大きい値に設定すると、そのテクスチャは 3D テクスチャとして扱われます。
format : enumeration [default: TextureData.RGBA8]
このプロパティは、テクスチャデータの形式を保持します。
| 定数 | 説明 |
|---|---|
TexureData.None | カラーフォーマットは定義されていません |
TexureData.RGBA8 | カラーフォーマットは、R、G、B、およびアルファチャンネルにおいて 8 ビット整数とみなされます。 |
TexureData.RGBA16F | カラーフォーマットは、R、G、B、およびアルファチャンネルにおいて 16 ビットの浮動小数点数とみなされます。 |
TexureData.RGBA32F | R、G、B、およびアルファチャンネルにおいて、カラーフォーマットは 32 ビットの浮動小数点数として扱われます。 |
TexureData.RGBE8 | カラー形式は、R、G、B チャンネルで 8 ビットの仮数、8 ビットの共有指数として扱われます。 |
TexureData.R8 | R チャンネルでは、カラー形式は 8 ビット整数として扱われます。 |
TexureData.R16 | R チャンネルでは、カラーフォーマットは 16 ビット整数とみなされます。 |
TexureData.R16F | このカラーフォーマットは、R チャンネルにおいて 16 ビット浮動小数点数とみなされます。 |
TexureData.R32F | このカラーフォーマットは、R チャンネルが 32 ビットの浮動小数点数として扱われます。 |
TexureData.BC1 | このカラーフォーマットは、R、G、B、およびアルファチャンネルを持つ BC1 圧縮フォーマットとみなされます。 |
TexureData.BC2 | このカラーフォーマットは、R、G、B、およびアルファチャンネルを持つ BC2 圧縮フォーマットとみなされます。 |
TexureData.BC3 | このカラーフォーマットは、R、G、B、およびアルファチャンネルを持つ BC3 圧縮フォーマットとみなされます。 |
TexureData.BC4 | このカラーフォーマットは、1 つのカラーチャンネルを持つ BC4 圧縮フォーマットとみなされます。 |
TexureData.BC5 | このカラーフォーマットは、2 つのカラーチャンネルを持つ BC5 圧縮フォーマットとみなされます。 |
TexureData.BC6H | このカラーフォーマットは、3 つの高ダイナミックレンジカラーチャンネルを持つ BC6H 圧縮フォーマットとみなされます。 |
TexureData.BC7 | このカラーフォーマットは、R、G、B、およびアルファチャンネルを持つ BC7 圧縮フォーマットとみなされます。 |
TexureData.DXT1_RGBA | このカラーフォーマットは、R、G、B、およびアルファチャンネルを持つ DXT1 圧縮フォーマットとみなされます。 |
TexureData.DXT1_RGB | このカラーフォーマットは、R、G、B チャンネルを持つ DXT1 圧縮フォーマットとみなされます。 |
TexureData.DXT3_RGBA | このカラーフォーマットは、R、G、B、およびアルファチャンネルを持つ DXT3 圧縮フォーマットとみなされます。 |
TexureData.DXT5_RGBA | このカラーフォーマットは、R、G、B、およびアルファチャンネルを持つ DXT5 圧縮フォーマットとみなされます。 |
TexureData.ETC2_RGB8 | このカラーフォーマットは、RGB888 データ用の ETC2 圧縮フォーマットとみなされます。 |
TexureData.ETC2_RGB8A1 | このカラーフォーマットは、アルファが 1 ビットの RGBA データ用の ETC2 圧縮フォーマットと見なされます。 |
TexureData.ETC2_RGBA8 | このカラーフォーマットは、RGBA8888 データを含む ETC2 圧縮フォーマットとみなされます。 |
TexureData.ASTC_4x4 | このカラーフォーマットは、4x4 ブロックのフットプリントを持つ ASTC 圧縮フォーマットとみなされます。 |
TexureData.ASTC_5x4 | このカラーフォーマットは、5x4 ブロックのフットプリントを持つ ASTC 圧縮フォーマットとみなされます。 |
TexureData.ASTC_5x5 | このカラーフォーマットは、5x5 ブロックのフットプリントを持つ ASTC 圧縮フォーマットとみなされます。 |
TexureData.ASTC_6x5 | このカラーフォーマットは、6x5 ブロックのフットプリントを持つ ASTC 圧縮フォーマットとみなされます。 |
TexureData.ASTC_6x6 | このカラーフォーマットは、6x6 ブロックのフットプリントを持つ ASTC 圧縮フォーマットとみなされます。 |
TexureData.ASTC_8x5 | このカラーフォーマットは、8x5 ブロックのフットプリントを持つ ASTC 圧縮フォーマットとみなされます。 |
TexureData.ASTC_8x6 | このカラーフォーマットは、8x6 ブロックのフットプリントを持つ ASTC 圧縮フォーマットとみなされます。 |
TexureData.ASTC_8x8 | このカラーフォーマットは、8x8 ブロックのフットプリントを持つ ASTC 圧縮フォーマットと見なされます。 |
TexureData.ASTC_10x5 | このカラーフォーマットは、10×5 ブロックのフットプリントを持つ ASTC 圧縮フォーマットとみなされます。 |
TexureData.ASTC_10x6 | このカラーフォーマットは、10x6 ブロックのフットプリントを持つ ASTC 圧縮フォーマットとみなされます。 |
TexureData.ASTC_10x8 | このカラーフォーマットは、10×8 ブロックのフットプリントを持つ ASTC 圧縮フォーマットとみなされます。 |
TexureData.ASTC_10x10 | このカラーフォーマットは、10x10 ブロックのフットプリントを持つ ASTC 圧縮フォーマットとみなされます。 |
TexureData.ASTC_12x10 | このカラーフォーマットは、12x10 ブロックのフットプリントを持つ ASTC 圧縮フォーマットとみなされます。 |
TexureData.ASTC_12x12 | このカラーフォーマットは、12x12 ブロックのフットプリントを持つ ASTC 圧縮フォーマットとみなされます。 注: 注: 注: |
hasTransparency : bool
このプロパティは、テクスチャデータに透明度があるかどうかにかかわらず、その値が保持されます。
height : int [default: 0]
このプロパティには、テクスチャデータの高さ(ピクセル単位)が格納されます。
textureData : ArrayBuffer
このプロパティには、テクスチャデータが格納されています。
width : int [default: 0]
このプロパティには、テクスチャデータの幅(ピクセル単位)が格納されます。
© 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.