DXGI_FORMAT_UNKNOWN = 0, DXGI_FORMAT_R32G32B32A32_TYPELESS = 1, DXGI_FORMAT_R32G32B32A32_FLOAT = 2, DXGI_FORMAT_R32G32B32A32_UINT = 3, DXGI_FORMAT_R32G32B32A32_SINT = 4, DXGI_FORMAT_R32G32B32_TYPELESS = 5, DXGI_FORMAT_R32G32B32_FLOAT = 6, DXGI_FORMAT_R32G32B32_UINT = 7, DXGI_FORMAT_R32G32B32_SINT = 8, DXGI_FORMAT_R16G16B16A16_TYPELESS = 9, DXGI_FORMAT_R16G16B16A16_FLOAT = 10, DXGI_FORMAT_R16G16B16A16_UNORM = 11, DXGI_FORMAT_R16G16B16A16_UINT = 12, DXGI_FORMAT_R16G16B16A16_SNORM = 13, DXGI_FORMAT_R16G16B16A16_SINT = 14, DXGI_FORMAT_R32G32_TYPELESS = 15, DXGI_FORMAT_R32G32_FLOAT = 16, DXGI_FORMAT_R32G32_UINT = 17, DXGI_FORMAT_R32G32_SINT = 18, DXGI_FORMAT_R32G8X24_TYPELESS = 19, DXGI_FORMAT_D32_FLOAT_S8X24_UINT = 20, DXGI_FORMAT_R32_FLOAT_X8X24_TYPELESS = 21, DXGI_FORMAT_X32_TYPELESS_G8X24_UINT = 22, DXGI_FORMAT_R10G10B10A2_TYPELESS = 23, DXGI_FORMAT_R10G10B10A2_UNORM = 24, DXGI_FORMAT_R10G10B10A2_UINT = 25, DXGI_FORMAT_R11G11B10_FLOAT = 26, DXGI_FORMAT_R8G8B8A8_TYPELESS = 27, DXGI_FORMAT_R8G8B8A8_UNORM = 28, DXGI_FORMAT_R8G8B8A8_UNORM_SRGB = 29, DXGI_FORMAT_R8G8B8A8_UINT = 30, DXGI_FORMAT_R8G8B8A8_SNORM = 31, DXGI_FORMAT_R8G8B8A8_SINT = 32, DXGI_FORMAT_R16G16_TYPELESS = 33, DXGI_FORMAT_R16G16_FLOAT = 34, DXGI_FORMAT_R16G16_UNORM = 35, DXGI_FORMAT_R16G16_UINT = 36, DXGI_FORMAT_R16G16_SNORM = 37, DXGI_FORMAT_R16G16_SINT = 38, DXGI_FORMAT_R32_TYPELESS = 39, DXGI_FORMAT_D32_FLOAT = 40, DXGI_FORMAT_R32_FLOAT = 41, DXGI_FORMAT_R32_UINT = 42, DXGI_FORMAT_R32_SINT = 43, DXGI_FORMAT_R24G8_TYPELESS = 44, DXGI_FORMAT_D24_UNORM_S8_UINT = 45, DXGI_FORMAT_R24_UNORM_X8_TYPELESS = 46, DXGI_FORMAT_X24_TYPELESS_G8_UINT = 47, DXGI_FORMAT_R8G8_TYPELESS = 48, DXGI_FORMAT_R8G8_UNORM = 49, DXGI_FORMAT_R8G8_UINT = 50, DXGI_FORMAT_R8G8_SNORM = 51, DXGI_FORMAT_R8G8_SINT = 52, DXGI_FORMAT_R16_TYPELESS = 53, DXGI_FORMAT_R16_FLOAT = 54, DXGI_FORMAT_D16_UNORM = 55, DXGI_FORMAT_R16_UNORM = 56, DXGI_FORMAT_R16_UINT = 57, DXGI_FORMAT_R16_SNORM = 58, DXGI_FORMAT_R16_SINT = 59, DXGI_FORMAT_R8_TYPELESS = 60, DXGI_FORMAT_R8_UNORM = 61, DXGI_FORMAT_R8_UINT = 62, DXGI_FORMAT_R8_SNORM = 63, DXGI_FORMAT_R8_SINT = 64, DXGI_FORMAT_A8_UNORM = 65, DXGI_FORMAT_R1_UNORM = 66, DXGI_FORMAT_R9G9B9E5_SHAREDEXP = 67, DXGI_FORMAT_R8G8_B8G8_UNORM = 68, DXGI_FORMAT_G8R8_G8B8_UNORM = 69, DXGI_FORMAT_BC1_TYPELESS = 70, DXGI_FORMAT_BC1_UNORM = 71, DXGI_FORMAT_BC1_UNORM_SRGB = 72, DXGI_FORMAT_BC2_TYPELESS = 73, DXGI_FORMAT_BC2_UNORM = 74, DXGI_FORMAT_BC2_UNORM_SRGB = 75, DXGI_FORMAT_BC3_TYPELESS = 76, DXGI_FORMAT_BC3_UNORM = 77, DXGI_FORMAT_BC3_UNORM_SRGB = 78, DXGI_FORMAT_BC4_TYPELESS = 79, DXGI_FORMAT_BC4_UNORM = 80, DXGI_FORMAT_BC4_SNORM = 81, DXGI_FORMAT_BC5_TYPELESS = 82, DXGI_FORMAT_BC5_UNORM = 83, DXGI_FORMAT_BC5_SNORM = 84, DXGI_FORMAT_B5G6R5_UNORM = 85, DXGI_FORMAT_B5G5R5A1_UNORM = 86, DXGI_FORMAT_B8G8R8A8_UNORM = 87, DXGI_FORMAT_B8G8R8X8_UNORM = 88, DXGI_FORMAT_R10G10B10_XR_BIAS_A2_UNORM = 89, DXGI_FORMAT_B8G8R8A8_TYPELESS = 90, DXGI_FORMAT_B8G8R8A8_UNORM_SRGB = 91, DXGI_FORMAT_B8G8R8X8_TYPELESS = 92, DXGI_FORMAT_B8G8R8X8_UNORM_SRGB = 93, DXGI_FORMAT_BC6H_TYPELESS = 94, DXGI_FORMAT_BC6H_UF16 = 95, DXGI_FORMAT_BC6H_SF16 = 96, DXGI_FORMAT_BC7_TYPELESS = 97, DXGI_FORMAT_BC7_UNORM = 98, DXGI_FORMAT_BC7_UNORM_SRGB = 99, DXGI_FORMAT_AYUV = 100, DXGI_FORMAT_Y410 = 101, DXGI_FORMAT_Y416 = 102, DXGI_FORMAT_NV12 = 103, DXGI_FORMAT_P010 = 104, DXGI_FORMAT_P016 = 105, DXGI_FORMAT_420_OPAQUE = 106, DXGI_FORMAT_YUY2 = 107, DXGI_FORMAT_Y210 = 108, DXGI_FORMAT_Y216 = 109, DXGI_FORMAT_NV11 = 110, DXGI_FORMAT_AI44 = 111, DXGI_FORMAT_IA44 = 112, DXGI_FORMAT_P8 = 113, DXGI_FORMAT_A8P8 = 114, DXGI_FORMAT_B4G4R4A4_UNORM = 115, DXGI_FORMAT_P208 = 130, DXGI_FORMAT_V208 = 131, DXGI_FORMAT_V408 = 132, DXGI_FORMAT_SAMPLER_FEEDBACK_MIN_MIP_OPAQUE, DXGI_FORMAT_SAMPLER_FEEDBACK_MIP_REGION_USED_OPAQUE, DXGI_FORMAT_FORCE_UINT = 0xffffffff DXGI_FORMAT_D32_FLOAT_S8X24_UINT
值: 20
32 位浮点组件和两个无符号整数组件 (另外 32 位) 。 此格式支持 32 位深度、8 位模具和 24 位未使用。⁵ DXGI_FORMAT_R32_FLOAT_X8X24_TYPELESS
值: 21
32 位浮点组件和两个无类型组件 (另外 32 位) 。 此格式支持 32 位红色通道,8 位未使用,24 位未使用。⁵ DXGI_FORMAT_X32_TYPELESS_G8X24_UINT
值: 22
32 位无类型组件和两个无符号整数组件 (另外 32 位) 。 此格式未使用 32 位、绿色通道的 8 位和 24 位未使用。 DXGI_FORMAT_R10G10B10A2_TYPELESS
值: 23
一种四分量、32 位无类型格式,每个颜色支持 10 位,alpha 支持 2 位。 DXGI_FORMAT_R10G10B10A2_UNORM
值: 24
一种四分量、32 位无符号规范化整数格式,每个颜色支持 10 位,alpha 支持 2 位。 DXGI_FORMAT_R10G10B10A2_UINT
值: 25
一种四分量、32 位无符号整数格式,每个颜色支持 10 位,2 位表示 alpha。 DXGI_FORMAT_R11G11B10_FLOAT
值: 26
三个部分精度浮点数编码为单个 32 位值, (s10e5 的变体,即符号位、10 位 mantissa 和 5 位偏置 (15) 指数) 。
没有符号位,每个通道有 5 位偏斜 (15) 指数,R 和 G 的 6 位 mantissa,B 的 5 位 mantissa,如下图所示。 5,7

三个部分精度浮点数中的位图示,其中显示没有符号位。 DXGI_FORMAT_R8G8B8A8_TYPELESS
值: 27
支持每个通道 8 位(包括 alpha)的四分量 32 位无类型格式。 DXGI_FORMAT_R8G8B8A8_UNORM
值: 28
支持每个通道 8 位(包括 alpha)的四分量 32 位无符号规范化整数格式。 DXGI_FORMAT_R8G8B8A8_UNORM_SRGB
值: 29
支持每个通道 8 位(包括 alpha)的四分量 32 位无符号规范化整数 sRGB 格式。 DXGI_FORMAT_R8G8B8A8_UINT
值: 30
支持每个通道 8 位(包括 alpha)的四分量 32 位无符号整数格式。 DXGI_FORMAT_R8G8B8A8_SNORM
值: 31
支持每个通道 8 位(包括 alpha)的四分量 32 位有符号规范化整数格式。 DXGI_FORMAT_R8G8B8A8_SINT
值: 32
一种四分量 32 位有符号整数格式,支持每个通道 8 位,包括 alpha。 DXGI_FORMAT_R16G16_TYPELESS
值: 33
一种双分量、32 位无类型格式,支持红色通道的 16 位,绿色通道支持 16 位。 DXGI_FORMAT_R16G16_FLOAT
值: 34
一种双分量 32 位浮点格式,支持红色通道的 16 位,绿色通道支持 16 位。 5,7 DXGI_FORMAT_R16G16_UNORM
值: 35
一种双分量、32 位无符号规范化整数格式,每个格式支持 16 位的绿色和红色通道。 DXGI_FORMAT_R16G16_UINT
值: 36
一种双分量 32 位无符号整数格式,支持红色通道的 16 位,绿色通道支持 16 位。 DXGI_FORMAT_R16G16_SNORM
值: 37
一种双分量 32 位有符号规范化整数格式,支持红色通道的 16 位,绿色通道支持 16 位。 DXGI_FORMAT_R16G16_SINT
值: 38
一种双分量 32 位带符号整数格式,支持红色通道的 16 位,绿色通道支持 16 位。 DXGI_FORMAT_R32_TYPELESS
值: 39
单组件、32 位无类型格式,支持红色通道的 32 位。 DXGI_FORMAT_D32_FLOAT
值: 40
单组件、32 位浮点格式,支持 32 位深度。 5,8 DXGI_FORMAT_R32_FLOAT
值: 41
一种单组件、32 位浮点格式,支持红色通道的 32 位。 5,8 DXGI_FORMAT_R32_UINT
值: 42
一种单分量 32 位无符号整数格式,支持红色通道的 32 位。 DXGI_FORMAT_R32_SINT
值: 43
单组件 32 位有符号整数格式,支持红色通道的 32 位。 DXGI_FORMAT_R24G8_TYPELESS
值: 44
一种双分量、32 位无类型格式,支持红色通道的 24 位,绿色通道支持 8 位。 DXGI_FORMAT_D24_UNORM_S8_UINT
值: 45
32 位 z 缓冲区格式,支持 24 位深度和 8 位模具。 DXGI_FORMAT_R24_UNORM_X8_TYPELESS
值: 46
一种 32 位格式,包含 24 位单分量、无符号规范化整数,还有一个额外的无类型 8 位。 此格式具有 24 位红色通道和 8 位未使用。 DXGI_FORMAT_X24_TYPELESS_G8_UINT
值: 47
32 位格式,包含 24 位单组件无类型格式,另外还有 8 位无符号整数组件。 此格式有 24 位未使用,8 位绿色通道。 DXGI_FORMAT_R8G8_TYPELESS
值: 48
一种双分量 16 位无类型格式,支持红色通道的 8 位,绿色通道支持 8 位。 DXGI_FORMAT_R8G8_UNORM
值: 49
一种双分量 16 位无符号规范化整数格式,支持红色通道的 8 位,绿色通道支持 8 位。 DXGI_FORMAT_R8G8_UINT
值: 50
一种双分量 16 位无符号整数格式,支持红色通道的 8 位,绿色通道支持 8 位。 DXGI_FORMAT_R8G8_SNORM
值: 51
一种双分量 16 位有符号规范化整数格式,支持红色通道的 8 位,绿色通道支持 8 位。 DXGI_FORMAT_R8G8_SINT
值: 52
一种双分量 16 位有符号整数格式,支持红色通道的 8 位,绿色通道支持 8 位。 DXGI_FORMAT_R16_TYPELESS
值: 53
单组件、16 位无类型格式,支持红色通道的 16 位。 DXGI_FORMAT_R16_FLOAT
值: 54
单组件 16 位浮点格式,支持 16 位红色通道。 5,7 DXGI_FORMAT_D16_UNORM
值: 55
单分量 16 位无符号规范化整数格式,支持 16 位深度。 DXGI_FORMAT_R16_UNORM
值: 56
一种单分量 16 位无符号规范化整数格式,支持红色通道的 16 位。 DXGI_FORMAT_R16_UINT
值: 57
一种单分量 16 位无符号整数格式,支持红色通道的 16 位。 DXGI_FORMAT_R16_SNORM
值: 58
单分量 16 位有符号规范化整数格式,支持红色通道的 16 位。 DXGI_FORMAT_R16_SINT
值: 59
一种单分量 16 位有符号整数格式,支持红色通道的 16 位。 DXGI_FORMAT_R8_TYPELESS
值: 60
一种单组件、8 位无类型格式,支持红色通道的 8 位。 DXGI_FORMAT_R8_UNORM
值: 61
一种单分量、8 位无符号规范化整数格式,支持红色通道的 8 位。 DXGI_FORMAT_R8_UINT
值: 62
一种单分量、8 位无符号整数格式,支持红色通道的 8 位。 DXGI_FORMAT_R8_SNORM
值: 63
一种单分量 8 位有符号规范化整数格式,支持红色通道的 8 位。 DXGI_FORMAT_R8_SINT
值: 64
一种单分量 8 位有符号整数格式,支持红色通道的 8 位。 DXGI_FORMAT_A8_UNORM
值: 65
仅 alpha 的单分量 8 位无符号规范化整数格式。 DXGI_FORMAT_R1_UNORM
值: 66
一种单分量、1 位无符号规范化整数格式,支持红色通道的 1 位。 ². DXGI_FORMAT_R9G9B9E5_SHAREDEXP
值: 67
三个部分精度浮点数编码为单个 32 位值,它们共享 s10e5 的同一个 5 位指数 (变体,即符号位、10 位 mantissa 和 5 位偏差 (15) 指数) 。
没有符号位,有一个共享的 5 位偏差 (15) 指数和每个通道的 9 位 mantissa,如下图所示。 6,7 .

三个部分精度浮点数中的位图示,该数字显示一个共享的 5 位偏斜指数和所有通道中的 9 位 mantissa。 DXGI_FORMAT_R8G8_B8G8_UNORM
值: 68
四分量 32 位无符号规范化整数格式。 此打包的 RGB 格式类似于 UYVY 格式。 每个 32 位块描述一对像素: (R8、G8、B8) 和 (R8、G8、B8) ,其中重复 R8/B8 值,G8 值对每个像素是唯一的。 ³

宽度必须是偶数。 DXGI_FORMAT_G8R8_G8B8_UNORM
值: 69
四分量 32 位无符号规范化整数格式。 此打包的 RGB 格式类似于 YUY2 格式。 每个 32 位块描述一对像素: (R8、G8、B8) 和 (R8、G8、B8) ,其中重复 R8/B8 值,G8 值对每个像素是唯一的。 ³

宽度必须是偶数。 DXGI_FORMAT_BC1_TYPELESS
值: 70
四分量无类型块压缩格式。 有关块压缩格式的信息,请参阅 Direct3D 11 中的纹理块压缩 DXGI_FORMAT_BC1_UNORM
值: 71
四分量块压缩格式。 有关块压缩格式的信息,请参阅 Direct3D 11 中的纹理块压缩 DXGI_FORMAT_BC1_UNORM_SRGB
值: 72
sRGB 数据的四分块压缩格式。 有关块压缩格式的信息,请参阅 Direct3D 11 中的纹理块压缩 DXGI_FORMAT_BC2_TYPELESS
值: 73
四分量无类型块压缩格式。 有关块压缩格式的信息,请参阅 Direct3D 11 中的纹理块压缩 DXGI_FORMAT_BC2_UNORM
值: 74
四分量块压缩格式。 有关块压缩格式的信息,请参阅 Direct3D 11 中的纹理块压缩 DXGI_FORMAT_BC2_UNORM_SRGB
值: 75
sRGB 数据的四分块压缩格式。 有关块压缩格式的信息,请参阅 Direct3D 11 中的纹理块压缩 DXGI_FORMAT_BC3_TYPELESS
值: 76
四分量无类型块压缩格式。 有关块压缩格式的信息,请参阅 Direct3D 11 中的纹理块压缩 DXGI_FORMAT_BC3_UNORM
值: 77
四分量块压缩格式。 有关块压缩格式的信息,请参阅 Direct3D 11 中的纹理块压缩 DXGI_FORMAT_BC3_UNORM_SRGB
值: 78
sRGB 数据的四分块压缩格式。 有关块压缩格式的信息,请参阅 Direct3D 11 中的纹理块压缩 DXGI_FORMAT_BC4_TYPELESS
值: 79
单组件无类型块压缩格式。 有关块压缩格式的信息,请参阅 Direct3D 11 中的纹理块压缩 DXGI_FORMAT_BC4_UNORM
值: 80
单组件块压缩格式。 有关块压缩格式的信息,请参阅 Direct3D 11 中的纹理块压缩 DXGI_FORMAT_BC4_SNORM
值: 81
单组件块压缩格式。 有关块压缩格式的信息,请参阅 Direct3D 11 中的纹理块压缩 DXGI_FORMAT_BC5_TYPELESS
值: 82
双组件无类型块压缩格式。 有关块压缩格式的信息,请参阅 Direct3D 11 中的纹理块压缩 DXGI_FORMAT_BC5_UNORM
值: 83
双组件块压缩格式。 有关块压缩格式的信息,请参阅 Direct3D 11 中的纹理块压缩 DXGI_FORMAT_BC5_SNORM
值: 84
双组件块压缩格式。 有关块压缩格式的信息,请参阅 Direct3D 11 中的纹理块压缩 DXGI_FORMAT_B5G6R5_UNORM
值: 85
一种三分量、16 位无符号规范化整数格式,支持 5 位表示蓝色、6 位表示绿色,5 位表示红色。

Direct3D 10 到 Direct3D 11: 此值为 DXGI 定义。 但是,Direct3D 10、10.1 或 11 台设备不支持此格式。

Direct3D 11.1: 在Windows 8之前不支持此值。 DXGI_FORMAT_B5G5R5A1_UNORM
值: 86
一种四分量 16 位无符号规范化整数格式,支持每个颜色通道和 1 位 alpha 的 5 位。

Direct3D 10 到 Direct3D 11: 此值为 DXGI 定义。 但是,Direct3D 10、10.1 或 11 台设备不支持此格式。

Direct3D 11.1: 在Windows 8之前不支持此值。 DXGI_FORMAT_B8G8R8A8_UNORM
值: 87
一种四分量 32 位无符号规范化整数格式,支持每个颜色通道和 8 位 alpha 的 8 位。 DXGI_FORMAT_B8G8R8X8_UNORM
值: 88
一种四分量、32 位无符号规范化整数格式,支持每个颜色通道的 8 位和 8 位未使用。 DXGI_FORMAT_R10G10B10_XR_BIAS_A2_UNORM
值: 89
一种四分量 32 位 2.8 偏置固定点格式,支持每个颜色通道和 2 位 alpha 的 10 位。 DXGI_FORMAT_B8G8R8A8_TYPELESS
值: 90
一种四分量 32 位无类型格式,支持每个通道(包括 alpha)的 8 位。 ⁴ DXGI_FORMAT_B8G8R8A8_UNORM_SRGB
值: 91
一种四分量 32 位无符号规范化标准 RGB 格式,支持每个通道(包括 alpha)的 8 位。 ⁴ DXGI_FORMAT_B8G8R8X8_TYPELESS
值: 92
四分量 32 位无类型格式,支持每个颜色通道的 8 位,8 位未使用。 ⁴ DXGI_FORMAT_B8G8R8X8_UNORM_SRGB
值: 93
一种四分量、32 位无符号规范化标准 RGB 格式,支持每个颜色通道的 8 位,8 位未使用。 ⁴ DXGI_FORMAT_BC6H_TYPELESS
值: 94
无类型块压缩格式。 ⁴ 有关块压缩格式的信息,请参阅 Direct3D 11 中的纹理块压缩 DXGI_FORMAT_BC6H_UF16
值: 95
块压缩格式。 ⁴ 有关块压缩格式的信息,请参阅 Direct3D 11.⁵ 中的纹理块压缩 DXGI_FORMAT_BC6H_SF16
值: 96
块压缩格式。 ⁴ 有关块压缩格式的信息,请参阅 Direct3D 11.⁵ 中的纹理块压缩 DXGI_FORMAT_BC7_TYPELESS
值: 97
无类型块压缩格式。 ⁴ 有关块压缩格式的信息,请参阅 Direct3D 11 中的纹理块压缩 DXGI_FORMAT_BC7_UNORM
值: 98
块压缩格式。 ⁴ 有关块压缩格式的信息,请参阅 Direct3D 11 中的纹理块压缩 DXGI_FORMAT_BC7_UNORM_SRGB
值: 99
块压缩格式。 ⁴ 有关块压缩格式的信息,请参阅 Direct3D 11 中的纹理块压缩 DXGI_FORMAT_AYUV
值: 100
最常见的 YUV 4:4:4 视频资源格式。 此视频资源格式的有效视图格式DXGI_FORMAT_R8G8B8A8_UNORM和DXGI_FORMAT_R8G8B8A8_UINT。 对于 UAV,DXGI_FORMAT_R32_UINT其他有效视图格式。 通过使用 UAV DXGI_FORMAT_R32_UINT,可以读取和写入,而不是只为DXGI_FORMAT_R8G8B8A8_UNORM和DXGI_FORMAT_R8G8B8A8_UINT写入。 支持的视图类型为 SRV、RTV 和 UAV。 一个视图提供整个图面的直接映射。 到视图通道的映射为 V-R8>,
U-G8>、
Y-B8>、
和 A-A8>。

有关视频渲染的 YUV 格式的详细信息,请参阅 视频渲染的建议 8 位 YUV 格式

Direct3D 11.1: 在Windows 8之前不支持此值。 DXGI_FORMAT_Y410
值: 101
每个通道 10 位打包的 YUV 4:4:4 视频资源格式。 此视频资源格式的有效视图格式DXGI_FORMAT_R10G10B10A2_UNORM和DXGI_FORMAT_R10G10B10A2_UINT。 对于 UAV,DXGI_FORMAT_R32_UINT其他有效视图格式。 通过使用 UAV DXGI_FORMAT_R32_UINT,可以读取和写入,而不是只写入DXGI_FORMAT_R10G10B10A2_UNORM和DXGI_FORMAT_R10G10B10A2_UINT。 支持的视图类型为 SRV 和 UAV。 一个视图提供整个图面的直接映射。 到视图通道的映射为 U-R10>,
Y-G10>、
V-B10>、
和 A-A2>。

有关视频渲染的 YUV 格式的详细信息,请参阅 视频渲染的建议 8 位 YUV 格式

Direct3D 11.1: 在Windows 8之前不支持此值。 DXGI_FORMAT_Y416
值: 102
每个通道 16 位打包的 YUV 4:4:4 视频资源格式。 此视频资源格式的有效视图格式DXGI_FORMAT_R16G16B16A16_UNORM和DXGI_FORMAT_R16G16B16A16_UINT。 支持的视图类型为 SRV 和 UAV。 一个视图提供整个图面的直接映射。 到视图通道的映射为 U-R16>,
Y-G16>、
V-B16>、
和 A-A16>。

有关视频渲染的 YUV 格式的详细信息,请参阅 视频渲染的建议 8 位 YUV 格式

Direct3D 11.1: 在Windows 8之前不支持此值。 DXGI_FORMAT_NV12
值: 103
最常见的 YUV 4:2:0 视频资源格式。 此视频资源格式的有效亮度数据视图格式DXGI_FORMAT_R8_UNORM和DXGI_FORMAT_R8_UINT。 对于此视频资源格式,有效色度数据视图格式 (宽度和高度为每 1/2 个亮度视图) DXGI_FORMAT_R8G8_UNORM和DXGI_FORMAT_R8G8_UINT。 支持的视图类型为 SRV、RTV 和 UAV。 对于亮度数据视图,到视图通道的映射为 Y-R8>。 对于 chrominance 数据视图,到视图通道的映射为 U-R8> 和
V-G8>。

有关视频渲染的 YUV 格式的详细信息,请参阅 视频渲染的建议 8 位 YUV 格式

宽度和高度必须是偶数。 此格式的 Direct3D 11 暂存资源和 initData 参数使用 (rowPitch * (height + (height / 2) ) ) 字节。 第一个 (SysMemPitch * 高度) 字节是 Y 平面,其余 (SysMemPitch * (height / 2) ) 字节是 UV 平面。

使用 YUY 4:2:0 格式的应用必须将 luma (Y) 平面与色度 (UV) 平面分开映射。 开发人员通过针对同一纹理调用 ID3D12Device::CreateShaderResourceView 两次并传入 1 通道和 2 通道格式来执行此操作。 传入与 Y 平面兼容的 1 通道格式仅映射 Y 平面。 传入与 UV 平面兼容的 2 通道格式 () 仅将你和 V 平面映射为单个资源视图。

Direct3D 11.1: 在Windows 8之前不支持此值。 DXGI_FORMAT_P010
值: 104
每个通道 10 位平面 YUV 4:2:0 视频资源格式。 此视频资源格式的有效亮度数据视图格式DXGI_FORMAT_R16_UNORM和DXGI_FORMAT_R16_UINT。 运行时不强制要求最低 6 位是否为 0 (,因为此视频资源格式是使用 16 位) 的 10 位格式。 如果需要,应用程序着色器代码必须手动强制实施。 从运行时的角度来看,DXGI_FORMAT_P010与DXGI_FORMAT_P016不同。 此视频资源格式 (宽度和高度的有效色度数据视图格式为每 1/2 个亮度视图) DXGI_FORMAT_R16G16_UNORM和DXGI_FORMAT_R16G16_UINT。 对于 UAV,其他有效的色度数据视图格式DXGI_FORMAT_R32_UINT。 通过使用 UAV DXGI_FORMAT_R32_UINT,可以读取和写入,而不是只为DXGI_FORMAT_R16G16_UNORM和DXGI_FORMAT_R16G16_UINT写入。 支持的视图类型为 SRV、RTV 和 UAV。 对于亮度数据视图,到视图通道的映射为 Y-R16>。 对于 chrominance 数据视图,到视图通道的映射为 U-R16> 和
V-G16>。

有关视频渲染的 YUV 格式的详细信息,请参阅 视频渲染的建议 8 位 YUV 格式

宽度和高度必须是偶数。 此格式的 Direct3D 11 暂存资源和 initData 参数使用 (rowPitch * (height + (height / 2) ) ) 字节。 第一个 (SysMemPitch * 高度) 字节是 Y 平面,其余 (SysMemPitch * (height / 2) ) 字节是 UV 平面。

使用 YUY 4:2:0 格式的应用必须将 luma (Y) 平面与色度 (UV) 平面分开映射。 开发人员通过针对同一纹理调用 ID3D12Device::CreateShaderResourceView 两次并传入 1 通道和 2 通道格式来执行此操作。 传入与 Y 平面兼容的 1 通道格式仅映射 Y 平面。 传入与 UV 平面兼容的 2 通道格式 () 仅将你和 V 平面映射为单个资源视图。

Direct3D 11.1: 在Windows 8之前不支持此值。 DXGI_FORMAT_P016
值: 105
每个通道 16 位平面 YUV 4:2:0 视频资源格式。 此视频资源格式的有效亮度数据视图格式DXGI_FORMAT_R16_UNORM和DXGI_FORMAT_R16_UINT。 此视频资源格式 (宽度和高度的有效色度数据视图格式为每 1/2 个亮度视图) DXGI_FORMAT_R16G16_UNORM和DXGI_FORMAT_R16G16_UINT。 对于 UAV,其他有效的色度数据视图格式DXGI_FORMAT_R32_UINT。 通过使用 UAV DXGI_FORMAT_R32_UINT,可以读取和写入,而不是只为DXGI_FORMAT_R16G16_UNORM和DXGI_FORMAT_R16G16_UINT写入。 支持的视图类型为 SRV、RTV 和 UAV。 对于亮度数据视图,到视图通道的映射为 Y-R16>。 对于 chrominance 数据视图,到视图通道的映射为 U-R16> 和
V-G16>。

有关视频渲染的 YUV 格式的详细信息,请参阅 视频渲染的建议 8 位 YUV 格式

宽度和高度必须是偶数。 此格式的 Direct3D 11 暂存资源和 initData 参数使用 (rowPitch * (height + (height / 2) ) ) 字节。 第一个 (SysMemPitch * 高度) 字节是 Y 平面,其余 (SysMemPitch * (height / 2) ) 字节是 UV 平面。

使用 YUY 4:2:0 格式的应用必须将 luma (Y) 平面与色度 (UV) 平面分开映射。 开发人员通过针对同一纹理调用 ID3D12Device::CreateShaderResourceView 两次并传入 1 通道和 2 通道格式来执行此操作。 传入与 Y 平面兼容的 1 通道格式仅映射 Y 平面。 传入与 UV 平面兼容的 2 通道格式 () 仅将你和 V 平面映射为单个资源视图。

Direct3D 11.1: 在Windows 8之前不支持此值。 DXGI_FORMAT_420_OPAQUE
值: 106
每个通道 8 位平面 YUV 4:2:0 视频资源格式。 此格式是子采样,其中每个像素都有自己的 Y 值,但每个 2x2 像素块共享一个你和 V 值。 运行时要求使用此格式创建的所有资源的宽度和高度是 2 的倍数。 运行时还要求用于此格式的任何 RECT 的左、右、上和下成员是 2 的倍数。 此格式不同于DXGI_FORMAT_NV12,即资源中的数据布局与应用程序完全不透明。 应用程序无法使用 CPU 映射资源,然后访问资源中的数据。 不能使用此格式的着色器。 由于此行为,支持非 NV12 4:2:0 布局的旧硬件 (例如 YV12 等,可以使用) 。 此外,当应用程序不需要数据处于标准布局时,可以使用具有比 NV12 更好的 4:2:0 实现的新硬件。

有关视频渲染的 YUV 格式的详细信息,请参阅 视频渲染的建议 8 位 YUV 格式

宽度和高度必须是偶数。 此格式的 Direct3D 11 暂存资源和 initData 参数使用 (rowPitch * (height + (height / 2) ) ) 字节。

使用 YUY 4:2:0 格式的应用必须将 luma (Y) 平面与色度 (UV) 平面分开映射。 开发人员通过针对同一纹理调用 ID3D12Device::CreateShaderResourceView 两次并传入 1 通道和 2 通道格式来执行此操作。 传入与 Y 平面兼容的 1 通道格式仅映射 Y 平面。 传入与 UV 平面兼容的 2 通道格式 () 仅将你和 V 平面映射为单个资源视图。

Direct3D 11.1: 在Windows 8之前不支持此值。 DXGI_FORMAT_YUY2
值: 107
最常见的 YUV 4:2:2 视频资源格式。 此视频资源格式的有效视图格式DXGI_FORMAT_R8G8B8A8_UNORM和DXGI_FORMAT_R8G8B8A8_UINT。 对于 UAV,DXGI_FORMAT_R32_UINT其他有效视图格式。 通过使用 UAV DXGI_FORMAT_R32_UINT,可以读取和写入,而不是只为DXGI_FORMAT_R8G8B8A8_UNORM和DXGI_FORMAT_R8G8B8A8_UINT写入。 支持的视图类型为 SRV 和 UAV。 一个视图提供整个图面的直接映射。 到视图通道的映射为 Y0-R8>,
U0-G8>、
Y1-B8>、
和 V0-A8>。

此视频资源格式的唯一有效视图格式是DXGI_FORMAT_R8G8_B8G8_UNORM。 使用此视图格式,当硬件在读取时以及筛选之前自动重新构造 RGBA 时,视图的宽度似乎是DXGI_FORMAT_R8G8B8A8_UNORM或DXGI_FORMAT_R8G8B8A8_UINT视图的两倍。 此 Direct3D 硬件行为是旧行为,可能不再有用。 使用此视图格式,到视图通道的映射为 Y0-R8>,
U0->
G8[0],
Y1-B8>、
和 V0->
G8[1]。

有关视频渲染的 YUV 格式的详细信息,请参阅 视频渲染的建议 8 位 YUV 格式

宽度必须是偶数。

Direct3D 11.1: 在Windows 8之前不支持此值。 DXGI_FORMAT_Y210
值: 108
每个通道 10 位打包的 YUV 4:2:2 视频资源格式。 此视频资源格式的有效视图格式DXGI_FORMAT_R16G16B16A16_UNORM和DXGI_FORMAT_R16G16B16A16_UINT。 运行时不强制要求最低 6 位是否为 0 (,因为此视频资源格式是使用 16 位) 的 10 位格式。 如果需要,应用程序着色器代码必须手动强制实施。 从运行时的角度来看,DXGI_FORMAT_Y210与DXGI_FORMAT_Y216不同。 支持的视图类型为 SRV 和 UAV。 一个视图提供整个图面的直接映射。 到视图通道的映射为 Y0-R16>,
U-G16>、
Y1-B16>、
和 V-A16>。

有关视频渲染的 YUV 格式的详细信息,请参阅 视频渲染的建议 8 位 YUV 格式

宽度必须是偶数。

Direct3D 11.1: 在Windows 8之前不支持此值。 DXGI_FORMAT_Y216
值: 109
每个通道 16 位打包的 YUV 4:2:2 视频资源格式。 此视频资源格式的有效视图格式DXGI_FORMAT_R16G16B16A16_UNORM和DXGI_FORMAT_R16G16B16A16_UINT。 支持的视图类型为 SRV 和 UAV。 一个视图提供整个图面的直接映射。 到视图通道的映射为 Y0-R16>,
U-G16>、
Y1-B16>、
和 V-A16>。

有关视频渲染的 YUV 格式的详细信息,请参阅 视频渲染的建议 8 位 YUV 格式

宽度必须是偶数。

Direct3D 11.1: 在Windows 8之前不支持此值。 DXGI_FORMAT_NV11
值: 110
最常见的平面 YUV 4:1:1 视频资源格式。 此视频资源格式的有效亮度数据视图格式DXGI_FORMAT_R8_UNORM和DXGI_FORMAT_R8_UINT。 此视频资源格式 (宽度和高度的有效色度数据视图格式为每 1/4 的亮度视图) DXGI_FORMAT_R8G8_UNORM和DXGI_FORMAT_R8G8_UINT。 支持的视图类型为 SRV、RTV 和 UAV。 对于亮度数据视图,到视图通道的映射为 Y-R8>。 对于 chrominance 数据视图,到视图通道的映射为 U-R8> 和
V-G8>。

有关视频渲染的 YUV 格式的详细信息,请参阅 视频渲染的建议 8 位 YUV 格式

宽度必须为 4 的倍数。 此格式的 Direct3D11 暂存资源和 initData 参数使用 (rowPitch * height * 2) 字节。 第一个 (SysMemPitch * 高度) 字节为 Y 平面,下一个 ( (SysMemPitch / 2) * 高度) 字节为 UV 平面,其余字节为填充。

Direct3D 11.1: 在Windows 8之前不支持此值。 DXGI_FORMAT_AI44
值: 111
4 位托盘化 YUV 格式,通常用于 DVD 子图片。

有关视频渲染的 YUV 格式的详细信息,请参阅 视频渲染的建议 8 位 YUV 格式

Direct3D 11.1: 在Windows 8之前不支持此值。 DXGI_FORMAT_IA44
值: 112
4 位托盘化 YUV 格式,通常用于 DVD 子图片。

有关视频渲染的 YUV 格式的详细信息,请参阅 视频渲染的建议 8 位 YUV 格式

Direct3D 11.1: 在Windows 8之前不支持此值。 DXGI_FORMAT_P8
值: 113
处理器处理 ISDB-T 数据时用于托盘化 RGB 数据的 8 位托盘化格式,处理器处理 BluRay 数据时用于托盘化 YUV 数据。

有关视频渲染的 YUV 格式的详细信息,请参阅 视频渲染的建议 8 位 YUV 格式

Direct3D 11.1: 在Windows 8之前不支持此值。 DXGI_FORMAT_A8P8
值: 114
处理器处理 BluRay 数据时,使用 8 位 alpha 的 8 位托盘格式,用于托盘化 YUV 数据。

有关视频渲染的 YUV 格式的详细信息,请参阅 视频渲染的建议 8 位 YUV 格式

Direct3D 11.1: 在Windows 8之前不支持此值。 DXGI_FORMAT_B4G4R4A4_UNORM
值: 115
一种四分量 16 位无符号规范化整数格式,支持每个通道(包括 alpha)的 4 位。

Direct3D 11.1: 在Windows 8之前不支持此值。 DXGI_FORMAT_P208
值: 130
视频格式;混合平面 4:2:2 格式的 8 位版本。 DXGI_FORMAT_V208
值: 131
8 位 YCbCrA 4:4 呈现格式。 DXGI_FORMAT_V408
值: 132
8 位 YCbCrA 4:4:4:4:4 呈现格式。 DXGI_FORMAT_FORCE_UINT
值: 0xffffffff
强制此枚举编译为大小为 32 位。 如果没有此值,某些编译器将允许此枚举编译为
32 位以外的大小。 不使用此值。

字节顺序 (LSB/MSB)

大多数格式具有字节对齐的组件,并且组件按 C 数组顺序排列, (最小地址首先) 。 对于没有电源为 2 的组件的格式,第一个命名组件位于最小有效位中。

适用于Endian-Independence的可移植编码

应编写可移植代码,而不是根据系统使用 big-endian 或 little-endian 字节顺序进行调整。 // DXGI_FORMAT_R32G32B32A32_FLOAT FLOAT* pR32G32B32A32 = ...; pR32G32B32A32[0] = 1.f; // R pR32G32B32A32[1] = 0.f; // G pR32G32B32A32[2] = 0.f; // B pR32G32B32A32[3] = 0.5f; // A // DXGI_FORMAT_R10G10B10A2_UNORM UINT32* pR10G10B10A2 = ...; pR10G10B10A2 = (0x3ff) | (0x1 << 30); // R=0x3ff, and A=0x1

格式的限制和说明

有几个格式具有其他限制和隐含行为:
  1. 使用DXGI_FORMAT_R32G32B32系列格式声明的资源不能同时用于顶点和纹理数据。 也就是说,不能使用以下任一绑定标志的DXGI_FORMAT_R32G32B32系列格式创建缓冲区资源:D3D10_BIND_VERTEX_BUFFER、D3D10_BIND_INDEX_BUFFER、D3D10_BIND_CONSTANT_BUFFER或D3D10_BIND_STREAM_OUTPUT (查看 D3D10_BIND_FLAG ) 。
  2. DXGI_FORMAT_R1_UNORM专为文本筛选而设计,并且必须与特定于格式的可配置 8x8 筛选器模式一起使用。 使用此格式调用 HLSL 采样函数时,地址偏移参数必须设置为 (0,0) 。
  3. 使用子采样格式的资源 ((例如DXGI_FORMAT_R8G8_B8G8) )必须具有 x 维度中 2 的倍数的大小。
  4. Direct3D 10 和 Direct3D 10.1 中不提供格式
  5. 这些浮点数格式在其 mantissa 中添加了隐含的 1。 如果指数不是 0,则应用指数之前,会将 1.0 添加到 mantissa 中。
  6. 这些浮点数格式没有添加到其 mantissa 的隐含 1。
  7. Denorm 支持:9、10、11 和 16 位浮点格式支持非序数。
  8. 无非数支持:32 位和 64 位浮点数格式将非序数刷新为零。
  9. 以下主题提供了特定硬件 功能级别 支持的格式列表: Direct3D 功能级别 12.1 硬件的 DXGI 格式支持 DXGI Format Support for Direct3D Feature Level 12.0 Hardware (Direct3D 功能级别 12.0 硬件的 DXGI 格式支持) DXGI Format Support for Direct3D Feature Level 11.1 Hardware (Direct3D 功能级别 11.1 硬件的 DXGI 格式支持) DXGI Format Support for Direct3D Feature Level 11.0 Hardware (Direct3D 功能级别 11.0 硬件的 DXGI 格式支持) Hardware Support for Direct3D 10Level9 Formats (Direct3D 10Level9 格式的硬件支持) Hardware Support for Direct3D 10.1 Formats (Direct3D 10.1 格式的硬件支持) Hardware Support for Direct3D 10 Formats (Direct3D 10 格式的硬件支持) 有关映射到 DXGI_FORMAT 值的 DirectXMath 类型的列表,请参阅 DirectXMath 库内部。

    格式修饰符

    每个枚举值都包含一个描述数据类型的格式修饰符。 格式修饰符 浮点值;32 位浮点格式使用 IEEE 754 单精度 (s23e8 格式) :符号位、8 位偏置 (127) 指数和 23 位 mantissa。 16 位浮点格式使用半精度 (s10e5 格式) :符号位、5 位偏置 (15) 指数和 10 位 mantissa。 _SINT 2 的补数有符号整数。 例如,3 位 SINT 表示值 -4、-3、-2、-1、0、1、2、3。 _SNORM 带符号规范化整数;在资源中解释为有符号整数,在着色器中解释为 [-1, 1] 范围内的有符号规范化浮点值。 对于 2 的补数,最大值为 1.0f (5 位值 01111 映射到 1.0f) ,最小值为 -1.0f (5 位值 10000 映射到 -1.0f) 。 此外,第二个最小值映射到 -1.0f (5 位值 10001 映射到 -1.0f) 。 生成的整数表示形式在范围 (-1.0f...0.0f) ,以及范围 (0.0f 中的数字的补充表示形式集...1.0f) 。 _Srgb 标准 RGB 数据,在亮度级别的线性渐变中大致显示颜色,以便平均观察者在平均观看条件下可以按平均显示方式查看它们。

    所有 0 的地图都映射到 0.0f,所有 1 的映射都映射到 1.0f。 所有 0 和所有 1 之间的无符号整数编码序列表示 0.0f 到 1.0f 之间的数字浮点解释中的非线性进展。 有关详细信息,请参阅 IEC (国际 Gbt 委员会) 的 SRGB 颜色标准 IEC 61996-2-1。

    从 sRGB 空间转换由 D3DX10 或 D3DX9 纹理加载函数自动完成。 如果具有_SRGB的格式具有 A 通道,则 A 通道存储在 Gamma 1.0f 数据中;格式的 R、G 和 B 通道存储在 Gamma 2.2f 数据中。 _TYPELESS 无类型数据,具有定义的位数。 无类型格式旨在创建无类型资源;也就是说,一个资源,其大小是已知的,但其数据类型尚未完全定义。 当无类型资源绑定到着色器时,应用程序或着色器必须解析格式类型 (必须匹配无类型格式) 每个组件的位数。

    无类型格式包含一个或多个子格式;每个子格式解析数据类型。 例如,在 R32G32B32 组中,定义三分量 96 位数据的类型,有一种无类型格式和三个完全类型化的子格式。

    DXGI_FORMAT_R32G32B32_TYPELESS, DXGI_FORMAT_R32G32B32_FLOAT, DXGI_FORMAT_R32G32B32_UINT, DXGI_FORMAT_R32G32B32_SINT, _UNORM 无符号规范化整数;在资源中解释为无符号整数,在着色器中解释为 [0, 1] 范围内的无符号规范化浮点值。 所有 0 的地图都映射到 0.0f,所有 1 的映射都映射到 1.0f。 表示从 0.0f 到 1.0f 的均匀间距浮点值序列。 例如,2 位 UNORM 表示 0.0f、1/3、2/3 和 1.0f。 _SHAREDEXP 共享指数。 格式中的所有浮点表示形式共享一个指数。

    新的资源格式

    Direct3D 10 提供了新的数据压缩格式,用于将高动态范围 (HDR) 照明数据、普通地图和高度字段压缩为原始大小的一小部分。 这些压缩类型包括:
  10. Shared-Exponent高动态范围 (HDR) 格式 (RGBE)
  11. 新Block-Compressed 1-2 通道 UNORM/SNORM 格式
  12. 块压缩格式可用于任何 2D 或 3D 纹理类型, ( Texture2D、Texture2DArray、Texture3D 或 TextureCube) (包括 mipmap 图面)。 块压缩技术要求纹理维度是 4 个 (的倍数,因为实现在 4x4 纹素块上压缩) 。 在纹理采样器中,压缩格式始终在纹理筛选之前解压缩。