Surface 像素格式。
語法
struct DDS_PIXELFORMAT {
DWORD dwSize;
DWORD dwFlags;
DWORD dwFourCC;
DWORD dwRGBBitCount;
DWORD dwRBitMask;
DWORD dwGBitMask;
DWORD dwBBitMask;
DWORD dwABitMask;
};
Members
-
dw大小
-
類型: DWORD
-
結構尺寸;設定為 32 (位元組)。
-
dw旗標
-
類型: DWORD
-
指出表面中資料類型的值。
Flag Description 價值觀 DDPF_ALPHAPIXELS 紋理包含 alpha 資料; dwRGBAlphaBitMask 包含有效的數據。 0x1 DDPF_ALPHA 在某些較舊的 DDS 檔案中,僅用於 Alpha 通道未壓縮資料 (dwRGBBitCount 包含 Alpha 通道位元計數;dwABitMask 包含有效資料) 0x2 DDPF_FOURCC dwFourCC 包含有效資料。 0x4 DDPF_RGB 紋理包含未壓縮的 RGB 資料; dwRGBBitCount 和 RGB 遮罩 (dwRBitMask、 dwGBitMask、 dwBBitMask) 包含有效數據。 0x40 DDPF_YUV 用於 YUV 未壓縮資料的某些較舊的 DDS 檔案中 (dwRGBBitCount 包含 YUV 位元計數;dwRBitMask 包含 Y 遮罩,dwGBitMask 包含 U 遮罩,dwBBitMask 包含 V 遮罩) 0x200 DDPF_LUMINANCE 用於某些較舊的 DDS 檔案中,用於單一通道色彩未壓縮資料 (dwRGBBitCount 包含亮度通道位計數;dwRBitMask 包含通道遮罩) 。 可與雙通道 DDS 檔案的DDPF_ALPHAPIXELS結合使用。 0x20000 -
dwFourCC
-
類型: DWORD
-
用於指定壓縮或自訂格式的四個字元代碼。 可能的值包括: DXT1、 DXT2、 DXT3、 DXT4 或 DXT5。 DX10 的 FourCC 會指出 DDS_HEADER_DXT10 擴充標頭的前置,而該結構的 dxgiFormat 成員會指出真正的格式。 使用四個字元的程式代碼時,dwFlags 必須包含 DDPF_FOURCC。
-
dwRGBBitCount
-
類型: DWORD
-
RGB (可能包括 alpha) 格式的位元數。 當 dwFlags 包含 DDPF_RGB、 DDPF_LUMINANCE 或 DDPF_YUV 時有效。
-
dwRBit遮罩
-
類型: DWORD
-
紅色(或亮度或 Y)遮罩,用於讀取顏色資料。 例如,給定A8R8G8B8格式,紅色遮罩將是0x00ff0000。
-
dwGBit遮罩
-
類型: DWORD
-
用於讀取顏色資料的綠色(或 U)遮罩。 例如,給定A8R8G8B8格式,綠色遮罩將0x0000ff00。
-
dwBBit遮罩
-
類型: DWORD
-
用於讀取顏色資料的藍色(或 V)遮罩。 例如,給定A8R8G8B8格式,藍色遮罩將0x000000ff。
-
dwABit遮罩
-
類型: DWORD
-
用於讀取 Alpha 資料的 Alpha 遮罩。 dwFlags 必須包含 DDPF_ALPHAPIXELS 或 DDPF_ALPHA。 例如,給定A8R8G8B8格式,alpha 遮罩將0xff000000。
備註
若要儲存 DXGI 格式,例如浮點數據,請使用 DDPF_FOURCC 的 dwFlags ,並將 dwFourCC 設定為 'D','X','1','0'。 使用 DDS_HEADER_DXT10 延伸模組標頭,將 DXGI 格式儲存在 dxgiFormat 成員中。
請注意,有 DDS 檔案的非標準變體,其中 dwFlags 已DDPF_FOURCC,且 dwFourCC 值會直接設定為D3DFORMAT或DXGI_FORMAT列舉值。 使用此非標準配置無法消除D3DFORMAT值與DXGI_FORMAT值的歧義,因此建議改用 DX10 擴充標頭。
需求
| Requirement | 價值觀 |
|---|---|
| Header |
|