Bagikan melalui


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
Dds.h

Lihat juga

Referensi untuk DDS