D3DDDIFORMAT列舉 (d3dukmdt.h)

D3DDDIFORMAT列舉類型包含識別表面格式的值。

Syntax

typedef enum _D3DDDIFORMAT {
  D3DDDIFMT_UNKNOWN,
  D3DDDIFMT_R8G8B8,
  D3DDDIFMT_A8R8G8B8,
  D3DDDIFMT_X8R8G8B8,
  D3DDDIFMT_R5G6B5,
  D3DDDIFMT_X1R5G5B5,
  D3DDDIFMT_A1R5G5B5,
  D3DDDIFMT_A4R4G4B4,
  D3DDDIFMT_R3G3B2,
  D3DDDIFMT_A8,
  D3DDDIFMT_A8R3G3B2,
  D3DDDIFMT_X4R4G4B4,
  D3DDDIFMT_A2B10G10R10,
  D3DDDIFMT_A8B8G8R8,
  D3DDDIFMT_X8B8G8R8,
  D3DDDIFMT_G16R16,
  D3DDDIFMT_A2R10G10B10,
  D3DDDIFMT_A16B16G16R16,
  D3DDDIFMT_A8P8,
  D3DDDIFMT_P8,
  D3DDDIFMT_L8,
  D3DDDIFMT_A8L8,
  D3DDDIFMT_A4L4,
  D3DDDIFMT_V8U8,
  D3DDDIFMT_L6V5U5,
  D3DDDIFMT_X8L8V8U8,
  D3DDDIFMT_Q8W8V8U8,
  D3DDDIFMT_V16U16,
  D3DDDIFMT_W11V11U10,
  D3DDDIFMT_A2W10V10U10,
  D3DDDIFMT_UYVY,
  D3DDDIFMT_R8G8_B8G8,
  D3DDDIFMT_YUY2,
  D3DDDIFMT_G8R8_G8B8,
  D3DDDIFMT_DXT1,
  D3DDDIFMT_DXT2,
  D3DDDIFMT_DXT3,
  D3DDDIFMT_DXT4,
  D3DDDIFMT_DXT5,
  D3DDDIFMT_D16_LOCKABLE,
  D3DDDIFMT_D32,
  D3DDDIFMT_D15S1,
  D3DDDIFMT_D24S8,
  D3DDDIFMT_D24X8,
  D3DDDIFMT_D24X4S4,
  D3DDDIFMT_D16,
  D3DDDIFMT_D32F_LOCKABLE,
  D3DDDIFMT_D24FS8,
  D3DDDIFMT_D32_LOCKABLE,
  D3DDDIFMT_S8_LOCKABLE,
  D3DDDIFMT_S1D15,
  D3DDDIFMT_S8D24,
  D3DDDIFMT_X8D24,
  D3DDDIFMT_X4S4D24,
  D3DDDIFMT_L16,
  D3DDDIFMT_G8R8,
  D3DDDIFMT_R8,
  D3DDDIFMT_VERTEXDATA,
  D3DDDIFMT_INDEX16,
  D3DDDIFMT_INDEX32,
  D3DDDIFMT_Q16W16V16U16,
  D3DDDIFMT_MULTI2_ARGB8,
  D3DDDIFMT_R16F,
  D3DDDIFMT_G16R16F,
  D3DDDIFMT_A16B16G16R16F,
  D3DDDIFMT_R32F,
  D3DDDIFMT_G32R32F,
  D3DDDIFMT_A32B32G32R32F,
  D3DDDIFMT_CxV8U8,
  D3DDDIFMT_A1,
  D3DDDIFMT_A2B10G10R10_XR_BIAS,
  D3DDDIFMT_DXVACOMPBUFFER_BASE,
  D3DDDIFMT_PICTUREPARAMSDATA,
  D3DDDIFMT_MACROBLOCKDATA,
  D3DDDIFMT_RESIDUALDIFFERENCEDATA,
  D3DDDIFMT_DEBLOCKINGDATA,
  D3DDDIFMT_INVERSEQUANTIZATIONDATA,
  D3DDDIFMT_SLICECONTROLDATA,
  D3DDDIFMT_BITSTREAMDATA,
  D3DDDIFMT_MOTIONVECTORBUFFER,
  D3DDDIFMT_FILMGRAINBUFFER,
  D3DDDIFMT_DXVA_RESERVED9,
  D3DDDIFMT_DXVA_RESERVED10,
  D3DDDIFMT_DXVA_RESERVED11,
  D3DDDIFMT_DXVA_RESERVED12,
  D3DDDIFMT_DXVA_RESERVED13,
  D3DDDIFMT_DXVA_RESERVED14,
  D3DDDIFMT_DXVA_RESERVED15,
  D3DDDIFMT_DXVA_RESERVED16,
  D3DDDIFMT_DXVA_RESERVED17,
  D3DDDIFMT_DXVA_RESERVED18,
  D3DDDIFMT_DXVA_RESERVED19,
  D3DDDIFMT_DXVA_RESERVED20,
  D3DDDIFMT_DXVA_RESERVED21,
  D3DDDIFMT_DXVA_RESERVED22,
  D3DDDIFMT_DXVA_RESERVED23,
  D3DDDIFMT_DXVA_RESERVED24,
  D3DDDIFMT_DXVA_RESERVED25,
  D3DDDIFMT_DXVA_RESERVED26,
  D3DDDIFMT_DXVA_RESERVED27,
  D3DDDIFMT_DXVA_RESERVED28,
  D3DDDIFMT_DXVA_RESERVED29,
  D3DDDIFMT_DXVA_RESERVED30,
  D3DDDIFMT_DXVA_RESERVED31,
  D3DDDIFMT_DXVACOMPBUFFER_MAX,
  D3DDDIFMT_BINARYBUFFER,
  D3DDDIFMT_FORCE_UINT
} D3DDDIFORMAT;

常數

 
D3DDDIFMT_UNKNOWN
未知的格式。
D3DDDIFMT_R8G8B8
每個通道都有 8 位的 24 位 RGB 無符號像素格式。
D3DDDIFMT_A8R8G8B8
32 位 ARGB 不帶正負號的圖元格式,每個通道都會使用 8 位。
D3DDDIFMT_X8R8G8B8
32 位 RGB 無符號像素格式,其中 8 位會保留給每個色彩。
D3DDDIFMT_R5G6B5
16 位 RGB 無符號像素格式,5 位代表紅色、6 位代表綠色,5 位代表藍色。
D3DDDIFMT_X1R5G5B5
16 位無符號像素格式,其中 5 位會保留給每個色彩。
D3DDDIFMT_A1R5G5B5
16 位無符號像素格式,其中 5 位會保留給每個色彩,1 位則保留給 Alpha。
D3DDDIFMT_A4R4G4B4
每個通道有 4 位的 16 位 ARGB 無符號像素格式。
D3DDDIFMT_R3G3B2
8 位 RGB 無符號紋理格式,使用 3 位表示紅色、3 位代表綠色,2 位表示藍色。
D3DDDIFMT_A8
僅限 8 位 Alpha。
D3DDDIFMT_A8R3G3B2
16 位 ARGB 不帶正負號的紋理格式,使用 8 位用於 alpha、3 位分別用於紅色和綠色,以及 2 位代表藍色。
D3DDDIFMT_X4R4G4B4
針對每個色彩使用 4 位的 16 位 RGB 無符號像素格式。
D3DDDIFMT_A2B10G10R10
32 位無符號像素格式,每個色彩使用 10 位,2 位表示 Alpha。
D3DDDIFMT_A8B8G8R8
32 位 ARGB 不帶正負號的圖元格式,每個通道都會使用 8 位。
D3DDDIFMT_X8B8G8R8
32 位 RGB 無符號像素格式,其中 8 位會保留給每個色彩。
D3DDDIFMT_G16R16
32 位不帶正負號的圖元格式,每一個都使用 16 位做為綠色和紅色。
D3DDDIFMT_A2R10G10B10
32 位無符號像素格式,每個色彩使用 10 位,2 位表示 Alpha。
D3DDDIFMT_A16B16G16R16
每個元件使用16位的64位無符號像素格式。
D3DDDIFMT_A8P8
以 8 位 Alpha 為索引的 8 位色彩。
D3DDDIFMT_P8
已編製索引的8位色彩。
D3DDDIFMT_L8
僅限8位亮度。
D3DDDIFMT_A8L8
16 位格式,每一個都使用 8 位進行 Alpha 和亮度。
D3DDDIFMT_A4L4
8 位格式,每一個都使用 4 位進行 Alpha 和亮度。
D3DDDIFMT_V8U8
16 位帶正負號的凸凸對應格式,會針對您和 v 數據使用 8 位。
D3DDDIFMT_L6V5U5
16 位混合帶正負號和不帶正負號的凸凸對應格式,其亮度會使用 6 位用於亮度,而每個 5 位用於 v 和數據。
D3DDDIFMT_X8L8V8U8
32 位混合帶正負號和不帶正負號的凸位對應格式,每個通道都會使用8位。
D3DDDIFMT_Q8W8V8U8
每個通道使用 8 位的 32 位帶正負號的凸凸對應格式。
D3DDDIFMT_V16U16
32 位帶正負號的凸凸對應格式,每一個都為您和 v 數據使用 16 位。
D3DDDIFMT_W11V11U10
32 位帶正負號的凸凸對應格式,每個格式會針對 w 和 v 使用 11 位,併為您使用 10 位。
D3DDDIFMT_A2W10V10U10
32 位混合帶正負號和不帶正負號的凸位對應格式,分別針對 w、v 和 you 使用 2 位的 alpha 位和 10 位。
D3DDDIFMT_UYVY
UYVY FOURCC 格式 (MAKEFOURCC ('U'、'Y'、'V'、'Y') ) 。
D3DDDIFMT_R8G8_B8G8
RGBG FOURCC 格式 (MAKEFOURCC ('R'、'G'、'B'、'G') ) 。

16 位封裝的 RGB 格式,類似於 UYVY (U0Y0、V0Y1、U2Y2 等等) 。 RGBG FOURCC 格式需要圖元配對來代表色彩值。 配對中的第一個像素在低 8 位) 中包含 8 位綠色 (,而高 8 位) 中 8 位的紅色 (。 第二個像素包含低 8 位) 的綠色 (,以及高 8 位) 中藍色 (的 8 位。 兩個像素會共用紅色和藍色元件,而且每個元件都有唯一的綠色元件 (R0G0、B0G1、R2G2 等等) 。

紋理取樣器不會在查閱圖元著色器時將色彩正規化;它們會保留在 0.0f 到 255.0f 的範圍內。 所有可程式化圖元著色器模型都會發生這種情況。 針對固定函式圖元著色器,硬體應該正規化為0.f到1.f的範圍,並將它視為YUY2紋理。 公開此格式的硬體必須設定D3DCAPS9結構的 PixelShader1xMaxValue 成員,才能處理該範圍 (0.f 到 1.f) 。
D3DDDIFMT_YUY2
YUY2 FOURCC 格式 (MAKEFOURCC ('Y'、'U'、'Y'、'2') ) 。
D3DDDIFMT_G8R8_G8B8
GRGB FOURCC 格式 (MAKEFOURCC ('G'、'R'、'G'、'B') ) 。

16 位封裝的 RGB 格式,類似於 YUY2 (Y0U0、Y1V0、Y2U2 等等) 。 GRGB FOURCC 格式需要圖元配對來代表色彩值。 配對中的第一個像素在高 8 位) 中包含 8 位綠色 (,而低 8 位) 中有 8 位紅色 (。 第二個像素在高 8 位) 中包含 8 位綠色 (,而低 8 位) 則包含 8 位藍色 (。 兩個像素會共用紅色和藍色元件,每個元件都有唯一的綠色元件 (G0R0、G1B0、G2R2 等等) 。

紋理取樣器不會在查閱圖元著色器時將色彩正規化;它們會保留在 0.0f 到 255.0f 的範圍內。 所有可程式化圖元著色器模型都會發生這種情況。 針對固定函式圖元著色器,硬體應該正規化為0.f到1.f的範圍,並將它視為YUY2紋理。 公開此格式的硬體必須將 D3DCAPS9 的 PixelShader1xMaxValue 成員設定為能夠處理該範圍的值, (0.f 到 1.f) 。
D3DDDIFMT_DXT1
DXT1 FOURCC 壓縮紋理格式 (MAKEFOURCC ('D', 'X', 'T', '1') ) 。
D3DDDIFMT_DXT2
DXT2 FOURCC 壓縮紋理格式 (MAKEFOURCC ('D'、'X'、'T'、'2') ) 。
D3DDDIFMT_DXT3
DXT3 FOURCC 壓縮紋理格式 (MAKEFOURCC ('D', 'X', 'T', '3') ) 。
D3DDDIFMT_DXT4
DXT4 FOURCC 壓縮紋理格式 (MAKEFOURCC ('、'X'、'T'、'4') ) 。
D3DDDIFMT_DXT5
DXT5 FOURCC 壓縮紋理格式 (MAKEFOURCC ('D'、'X'、'T'、'5') ) 。
D3DDDIFMT_D16_LOCKABLE
16 位 z 緩衝區位深度。
D3DDDIFMT_D32
32 位 z 緩衝區位深度。
D3DDDIFMT_D15S1
16 位 z 緩衝區位深度,其中 15 位會保留給深度通道,而 1 位則保留給樣板通道。
D3DDDIFMT_D24S8
32 位 z 緩衝區位深度,用於深度通道使用 24 位,樣板通道則使用 8 位。
D3DDDIFMT_D24X8
針對深度通道使用 24 位的 32 位 z 緩衝區位深度。
D3DDDIFMT_D24X4S4
32 位 z 緩衝區位深度,針對深度通道使用 24 位,樣板通道則使用 4 位。
D3DDDIFMT_D16
16 位 z 緩衝區位深度。
D3DDDIFMT_D32F_LOCKABLE
可鎖定的緩衝區格式,其中深度值會以標準 IEEE 浮點數表示。
D3DDDIFMT_D24FS8
不可鎖定的緩衝區格式,包含24位浮點格式的24位深度 (:- 20e4) 和8位樣板。
D3DDDIFMT_D32_LOCKABLE
可鎖定的緩衝區格式,會針對深度通道使用32位。
D3DDDIFMT_S8_LOCKABLE
可為樣板通道使用8位的可鎖定緩衝區格式。
D3DDDIFMT_S1D15
16 位 z 緩衝區位深度,其中 15 位會保留給深度通道,而 1 位則保留給樣板通道。
D3DDDIFMT_S8D24
32 位 z 緩衝區位深度,用於深度通道使用 24 位,樣板通道則使用 8 位。
D3DDDIFMT_X8D24
針對深度通道使用 24 位的 32 位 z 緩衝區位深度。
D3DDDIFMT_X4S4D24
32 位 z 緩衝區位深度,針對深度通道使用 24 位,樣板通道則使用 4 位。
D3DDDIFMT_L16
僅限 16 位亮度。
D3DDDIFMT_G8R8
雙元件、16 位無符號標準化整數格式,支援紅色通道的 8 位,綠色通道則支援 8 位。 相當於從 DXGI_FORMAT 列舉 DXGI_FORMAT_R8G8_UNORM
D3DDDIFMT_R8
支持紅色通道 8 位的單一元件 8 位無符號正規化整數格式。 相當於從DXGI_FORMAT列舉DXGI_FORMAT_R8_UNORM
D3DDDIFMT_VERTEXDATA
頂點緩衝區介面。
D3DDDIFMT_INDEX16
16 位索引緩衝區位深度。
D3DDDIFMT_INDEX32
32 位索引緩衝區位深度。
D3DDDIFMT_Q16W16V16U16
每個通道使用16位的64位帶正負號的凸凸對應格式。
D3DDDIFMT_MULTI2_ARGB8
MultiElement FOURCC 非壓縮紋理 (MAKEFOURCC ('M','E','T','1') ) 。
D3DDDIFMT_R16F
16 位 s10e5 浮點介面格式,使用 16 位做為紅色通道。
D3DDDIFMT_G16R16F
32 位 s10e5 浮點介面格式,針對紅色通道使用 16 位,綠色通道則使用 16 位。
D3DDDIFMT_A16B16G16R16F
64 位 s10e5 浮點介面格式,針對每個通道使用 16 位, (alpha、藍色、綠色和紅色) 。
D3DDDIFMT_R32F
32 位 s23e8 浮點介面格式,使用 32 位做為紅色通道。
D3DDDIFMT_G32R32F
64 位 s23e8 浮點介面格式,使用 32 位做為紅色通道,而綠色通道則使用 32 位。
D3DDDIFMT_A32B32G32R32F
128 位 s23e8 浮點介面格式,針對每個通道使用 32 位, (alpha、藍色、綠色和紅色) 。
D3DDDIFMT_CxV8U8
16 位帶正負號的一般壓縮格式。 紋理取樣器會計算 C 通道的來源:C = sqrt (1 - U2 - V2) 。
D3DDDIFMT_A1
每個像素格式的單色 1 位。
D3DDDIFMT_A2B10G10R10_XR_BIAS
Windows 7 和更新版本支援。

32 位無符號像素格式,每個色彩使用 10 位,2 位用於 Alpha,以及 2.8 偏差固定點。
D3DDDIFMT_DXVACOMPBUFFER_BASE
基底壓縮緩衝區格式值。
D3DDDIFMT_PICTUREPARAMSDATA
圖片參數譯碼壓縮的緩衝區格式。
D3DDDIFMT_MACROBLOCKDATA
Macroblock 控制項命令譯碼壓縮的緩衝區格式。
D3DDDIFMT_RESIDUALDIFFERENCEDATA
剩餘區塊差異譯碼壓縮緩衝區格式。
D3DDDIFMT_DEBLOCKINGDATA
解除封鎖篩選控件命令將壓縮的緩衝區格式譯碼。
D3DDDIFMT_INVERSEQUANTIZATIONDATA
反量子化矩陣譯碼壓縮的緩衝區格式。
D3DDDIFMT_SLICECONTROLDATA
配量控件譯碼壓縮的緩衝區格式。
D3DDDIFMT_BITSTREAMDATA
Bitstream 數據譯碼壓縮的緩衝區格式。
D3DDDIFMT_MOTIONVECTORBUFFER
動作向量譯碼壓縮的緩衝區格式。
D3DDDIFMT_FILMGRAINBUFFER
電影粒度譯碼壓縮的緩衝區格式。
D3DDDIFMT_DXVA_RESERVED9
保留給 DirectX VA 格式類型。
D3DDDIFMT_DXVA_RESERVED10
保留給 DirectX VA 格式類型。
D3DDDIFMT_DXVA_RESERVED11
保留給 DirectX VA 格式類型。
D3DDDIFMT_DXVA_RESERVED12
保留給 DirectX VA 格式類型。
D3DDDIFMT_DXVA_RESERVED13
保留給 DirectX VA 格式類型。
D3DDDIFMT_DXVA_RESERVED14
保留給 DirectX VA 格式類型。
D3DDDIFMT_DXVA_RESERVED15
保留給 DirectX VA 格式類型。
D3DDDIFMT_DXVA_RESERVED16
保留給 DirectX VA 格式類型。
D3DDDIFMT_DXVA_RESERVED17
保留給 DirectX VA 格式類型。
D3DDDIFMT_DXVA_RESERVED18
保留給 DirectX VA 格式類型。
D3DDDIFMT_DXVA_RESERVED19
保留給 DirectX VA 格式類型。
D3DDDIFMT_DXVA_RESERVED20
保留給 DirectX VA 格式類型。
D3DDDIFMT_DXVA_RESERVED21
保留給 DirectX VA 格式類型。
D3DDDIFMT_DXVA_RESERVED22
保留給 DirectX VA 格式類型。
D3DDDIFMT_DXVA_RESERVED23
保留給 DirectX VA 格式類型。
D3DDDIFMT_DXVA_RESERVED24
保留給 DirectX VA 格式類型。
D3DDDIFMT_DXVA_RESERVED25
保留給 DirectX VA 格式類型。
D3DDDIFMT_DXVA_RESERVED26
保留給 DirectX VA 格式類型。
D3DDDIFMT_DXVA_RESERVED27
保留給 DirectX VA 格式類型。
D3DDDIFMT_DXVA_RESERVED28
保留給 DirectX VA 格式類型。
D3DDDIFMT_DXVA_RESERVED29
保留給 DirectX VA 格式類型。
D3DDDIFMT_DXVA_RESERVED30
保留給 DirectX VA 格式類型。
D3DDDIFMT_DXVA_RESERVED31
保留給 DirectX VA 格式類型。
D3DDDIFMT_DXVACOMPBUFFER_MAX
表示已達到壓縮緩衝區格式值上限。
D3DDDIFMT_BINARYBUFFER
二進位緩衝區格式。
D3DDDIFMT_FORCE_UINT
強制此列舉編譯為大小為32位。 如果沒有此值,某些編譯程式會允許此列舉編譯成 32 位以外的大小。 您不應該使用此值。

備註

請注意,硬體廠商會提供格式,而且許多FOURCC程式代碼並未列在D3DDDIFORMAT列舉類型中。 D3DDDIFORMAT格式是唯一的,因為它們是由 Microsoft Direct3D 運行時間所批准;也就是說,參考點陣化會對所有點陣化執行。 廠商會依卡片支援廠商提供的格式。

規格需求

需求
最低支援的用戶端 Windows Vista
標頭 d3dukmdt.h (包括 D3dumddi.h、D3dkmddi.h)

另請參閱

D3DDDIARG_CREATERESOURCE

DXGI_FORMAT