struktur DDS_PIXELFORMAT
Format piksel permukaan.
Sintaks
struct DDS_PIXELFORMAT {
DWORD dwSize;
DWORD dwFlags;
DWORD dwFourCC;
DWORD dwRGBBitCount;
DWORD dwRBitMask;
DWORD dwGBitMask;
DWORD dwBBitMask;
DWORD dwABitMask;
};
Anggota
-
dwSize
-
Jenis: DWORD
-
Ukuran struktur; atur ke 32 (byte).
-
dwFlags
-
Jenis: DWORD
-
Nilai yang menunjukkan jenis data apa yang ada di permukaan.
Bendera Deskripsi Nilai DDPF_ALPHAPIXELS Tekstur berisi data alfa; dwRGBAlphaBitMask berisi data yang valid. 0x1 DDPF_ALPHA Digunakan dalam beberapa file DDS yang lebih lama untuk saluran alfa hanya data yang tidak dikompresi (dwRGBBitCount berisi bitcount saluran alfa; dwABitMask berisi data yang valid) 0x2 DDPF_FOURCC Tekstur berisi data RGB terkompresi; dwFourCC berisi data yang valid. 0x4 DDPF_RGB Tekstur berisi data RGB yang tidak dikompresi; dwRGBBitCount dan mask RGB (dwRBitMask, dwGBitMask, dwBBitMask) berisi data yang valid. 0x40 DDPF_YUV Digunakan dalam beberapa file DDS yang lebih lama untuk data yang tidak dikompresi YUV (dwRGBBitCount berisi jumlah bit YUV; dwRBitMask berisi masker Y, dwGBitMask berisi masker U, dwBBitMask berisi masker V) 0x200 DDPF_LUMINANCE Digunakan dalam beberapa file DDS yang lebih lama untuk data yang tidak dikompresi warna saluran tunggal (dwRGBBitCount berisi jumlah bit saluran luminans; dwRBitMask berisi masker saluran). Dapat dikombinasikan dengan DDPF_ALPHAPIXELS untuk dua file DDS saluran. 0x20000 -
dwFourCC
-
Jenis: DWORD
-
Kode empat karakter untuk menentukan format terkompresi atau kustom. Nilai yang mungkin termasuk: DXT1, DXT2, DXT3, DXT4, atau DXT5. FourCC DX10 menunjukkan presensi header DDS_HEADER_DXT10 diperluas, dan anggota dxgiFormat dari struktur tersebut menunjukkan format yang sebenarnya. Saat menggunakan kode empat karakter, dwFlags harus menyertakan DDPF_FOURCC.
-
dwRGBBitCount
-
Jenis: DWORD
-
Jumlah bit dalam format RGB (mungkin termasuk alfa). Berlaku saat dwFlags mencakup DDPF_RGB, DDPF_LUMINANCE, atau DDPF_YUV.
-
dwRBitMask
-
Jenis: DWORD
-
Masker merah (atau luminance atau Y) untuk membaca data warna. Misalnya, mengingat format A8R8G8B8, masker merah akan 0x00ff0000.
-
dwGBitMask
-
Jenis: DWORD
-
Masker hijau (atau U) untuk membaca data warna. Misalnya, dengan format A8R8G8B8, masker hijau akan 0x0000ff00.
-
dwBBitMask
-
Jenis: DWORD
-
Masker biru (atau V) untuk membaca data warna. Misalnya, mengingat format A8R8G8B8, masker biru akan 0x000000ff.
-
dwABitMask
-
Jenis: DWORD
-
Masker alfa untuk membaca data alfa. dwFlags harus menyertakan DDPF_ALPHAPIXELS atau DDPF_ALPHA. Misalnya, mengingat format A8R8G8B8, masker alfa akan 0xff000000.
Keterangan
Untuk menyimpan format DXGI seperti data floating-point, gunakan dwFlags DDPF_FOURCC dan atur dwFourCC ke 'D','X','1','0'. Gunakan header ekstensi DDS_HEADER_DXT10 untuk menyimpan format DXGI di anggota dxgiFormat .
Perhatikan bahwa ada varian file DDS non-standar di mana dwFlags memiliki DDPF_FOURCC dan nilai dwFourCC diatur langsung ke nilai enumerasi D3DFORMAT atau DXGI_FORMAT. Tidak dimungkinkan untuk membedakan nilai D3DFORMAT versus DXGI_FORMAT menggunakan skema non-standar ini, sehingga header ekstensi DX10 direkomendasikan sebagai gantinya.
Persyaratan
Persyaratan | Nilai |
---|---|
Header |
|