2.2.2.1 DXGI_FORMAT

A DXGI_FORMAT enumeration specifies DirectX resource data formats, including fully typed and typeless formats.

 typedef  enum _DXGI_FORMAT
 {
   DXGI_FORMAT_UNKNOWN = 0x00000000,
   DXGI_FORMAT_R32G32B32A32_TYPELESS = 0x00000001,
   DXGI_FORMAT_R32G32B32A32_FLOAT = 0x00000002,
   DXGI_FORMAT_R32G32B32A32_UINT = 0x00000003,
   DXGI_FORMAT_R32G32B32A32_SINT = 0x00000004,
   DXGI_FORMAT_R32G32B32_TYPELESS = 0x00000005,
   DXGI_FORMAT_R32G32B32_FLOAT = 0x00000006,
   DXGI_FORMAT_R32G32B32_UINT = 0x00000007,
   DXGI_FORMAT_R32G32B32_SINT = 0x00000008,
   DXGI_FORMAT_R16G16B16A16_TYPELESS = 0x00000009,
   DXGI_FORMAT_R16G16B16A16_FLOAT = 0x0000000A,
   DXGI_FORMAT_R16G16B16A16_UNORM = 0x0000000B,
   DXGI_FORMAT_R16G16B16A16_UINT = 0x0000000C,
   DXGI_FORMAT_R16G16B16A16_SNORM = 0x0000000D,
   DXGI_FORMAT_R16G16B16A16_SINT = 0x0000000E,
   DXGI_FORMAT_R32G32_TYPELESS = 0x0000000F,
   DXGI_FORMAT_R32G32_FLOAT = 0x00000010,
   DXGI_FORMAT_R32G32_UINT = 0x00000011,
   DXGI_FORMAT_R32G32_SINT = 0x00000012,
   DXGI_FORMAT_R32G8X24_TYPELESS = 0x00000013,
   DXGI_FORMAT_D32_FLOAT_S8X24_UINT = 0x00000014,
   DXGI_FORMAT_R32_FLOAT_X8X24_TYPELESS = 0x00000015,
   DXGI_FORMAT_X32_TYPELESS_G8X24_UINT = 0x00000016,
   DXGI_FORMAT_R10G10B10A2_TYPELESS = 0x00000017,
   DXGI_FORMAT_R10G10B10A2_UNORM = 0x00000018,
   DXGI_FORMAT_R10G10B10A2_UINT = 0x00000019,
   DXGI_FORMAT_R11G11B10_FLOAT = 0x0000001A,
   DXGI_FORMAT_R8G8B8A8_TYPELESS = 0x0000001B,
   DXGI_FORMAT_R8G8B8A8_UNORM = 0x0000001C,
   DXGI_FORMAT_R8G8B8A8_UNORM_SRGB = 0x0000001D,
   DXGI_FORMAT_R8G8B8A8_UINT = 0x0000001E,
   DXGI_FORMAT_R8G8B8A8_SNORM = 0x0000001F,
   DXGI_FORMAT_R8G8B8A8_SINT = 0x00000020,
   DXGI_FORMAT_R16G16_TYPELESS = 0x00000021,
   DXGI_FORMAT_R16G16_FLOAT = 0x00000022,
   DXGI_FORMAT_R16G16_UNORM = 0x00000023,
   DXGI_FORMAT_R16G16_UINT = 0x00000024,
   DXGI_FORMAT_R16G16_SNORM = 0x00000025,
   DXGI_FORMAT_R16G16_SINT = 0x00000026,
   DXGI_FORMAT_R32_TYPELESS = 0x00000027,
   DXGI_FORMAT_D32_FLOAT = 0x00000028,
   DXGI_FORMAT_R32_FLOAT = 0x00000029,
   DXGI_FORMAT_R32_UINT = 0x0000002A,
   DXGI_FORMAT_R32_SINT = 0x0000002B,
   DXGI_FORMAT_R24G8_TYPELESS = 0x0000002C,
   DXGI_FORMAT_D24_UNORM_S8_UINT = 0x0000002D,
   DXGI_FORMAT_R24_UNORM_X8_TYPELESS = 0x0000002E,
   DXGI_FORMAT_X24_TYPELESS_G8_UINT = 0x0000002F,
   DXGI_FORMAT_R8G8_TYPELESS = 0x00000030,
   DXGI_FORMAT_R8G8_UNORM = 0x00000031,
   DXGI_FORMAT_R8G8_UINT = 0x00000032,
   DXGI_FORMAT_R8G8_SNORM = 0x00000033,
   DXGI_FORMAT_R8G8_SINT = 0x00000034,
   DXGI_FORMAT_R16_TYPELESS = 0x00000035,
   DXGI_FORMAT_R16_FLOAT = 0x00000036,
   DXGI_FORMAT_D16_UNORM = 0x00000037,
   DXGI_FORMAT_R16_UNORM = 0x00000038,
   DXGI_FORMAT_R16_UINT = 0x00000039,
   DXGI_FORMAT_R16_SNORM = 0x0000003A,
   DXGI_FORMAT_R16_SINT = 0x0000003B,
   DXGI_FORMAT_R8_TYPELESS = 0x0000003C,
   DXGI_FORMAT_R8_UNORM = 0x0000003D,
   DXGI_FORMAT_R8_UINT = 0x0000003E,
   DXGI_FORMAT_R8_SNORM = 0x0000003F,
   DXGI_FORMAT_R8_SINT = 0x00000040,
   DXGI_FORMAT_A8_UNORM = 0x00000041,
   DXGI_FORMAT_R1_UNORM = 0x00000042,
   DXGI_FORMAT_R9G9B9E5_SHAREDEXP = 0x00000043,
   DXGI_FORMAT_R8G8_B8G8_UNORM = 0x00000044,
   DXGI_FORMAT_G8R8_G8B8_UNORM = 0x00000045,
   DXGI_FORMAT_BC1_TYPELESS = 0x00000046,
   DXGI_FORMAT_BC1_UNORM = 0x00000047,
   DXGI_FORMAT_BC1_UNORM_SRGB = 0x00000048,
   DXGI_FORMAT_BC2_TYPELESS = 0x00000049,
   DXGI_FORMAT_BC2_UNORM = 0x0000004A,
   DXGI_FORMAT_BC2_UNORM_SRGB = 0x0000004B,
   DXGI_FORMAT_BC3_TYPELESS = 0x0000004C,
   DXGI_FORMAT_BC3_UNORM = 0x0000004D,
   DXGI_FORMAT_BC3_UNORM_SRGB = 0x0000004E,
   DXGI_FORMAT_BC4_TYPELESS = 0x0000004F,
   DXGI_FORMAT_BC4_UNORM = 0x00000050,
   DXGI_FORMAT_BC4_SNORM = 0x00000051,
   DXGI_FORMAT_BC5_TYPELESS = 0x00000052,
   DXGI_FORMAT_BC5_UNORM = 0x00000053,
   DXGI_FORMAT_BC5_SNORM = 0x00000054,
   DXGI_FORMAT_B5G6R5_UNORM = 0x00000055,
   DXGI_FORMAT_B5G5R5A1_UNORM = 0x00000056,
   DXGI_FORMAT_B8G8R8A8_UNORM = 0x00000057,
   DXGI_FORMAT_B8G8R8X8_UNORM = 0x00000058
 } DXGI_FORMAT;

DXGI_FORMAT_UNKNOWN:   An unknown format.

DXGI_FORMAT_R32G32B32A32_TYPELESS:  A four-component, 128-bit typeless format.

DXGI_FORMAT_R32G32B32A32_FLOAT:  A four-component, 128-bit floating-point format.

DXGI_FORMAT_R32G32B32A32_UINT:  A four-component, 128-bit unsigned-integer format.

DXGI_FORMAT_R32G32B32A32_SINT:  A four-component, 128-bit signed-integer format.

DXGI_FORMAT_R32G32B32_TYPELESS:  A three-component, 96-bit typeless format.

DXGI_FORMAT_R32G32B32_FLOAT:  A three-component, 96-bit floating-point format.

DXGI_FORMAT_R32G32B32_UINT:  A three-component, 96-bit unsigned-integer format.

DXGI_FORMAT_R32G32B32_SINT:  A three-component, 96-bit signed-integer format.

DXGI_FORMAT_R16G16B16A16_TYPELESS:  A four-component, 64-bit typeless format.

DXGI_FORMAT_R16G16B16A16_FLOAT:  A four-component, 64-bit floating-point format.

DXGI_FORMAT_R16G16B16A16_UNORM:  A four-component, 64-bit unsigned-integer format.

DXGI_FORMAT_R16G16B16A16_UINT:  A four-component, 64-bit unsigned-integer format.

DXGI_FORMAT_R16G16B16A16_SNORM:  A four-component, 64-bit signed-integer format.

DXGI_FORMAT_R16G16B16A16_SINT:  A four-component, 64-bit signed-integer format.

DXGI_FORMAT_R32G32_TYPELESS:  A two-component, 64-bit typeless format.

DXGI_FORMAT_R32G32_FLOAT:  A two-component, 64-bit floating-point format.

DXGI_FORMAT_R32G32_UINT:  A two-component, 64-bit unsigned-integer format.

DXGI_FORMAT_R32G32_SINT:  A two-component, 64-bit signed-integer format.

DXGI_FORMAT_R32G8X24_TYPELESS:  A two-component, 64-bit typeless format.

DXGI_FORMAT_D32_FLOAT_S8X24_UINT:  A 32-bit floating-point component, and two unsigned-integer components (with an additional 32 bits).

DXGI_FORMAT_R32_FLOAT_X8X24_TYPELESS:  A 32-bit floating-point component, and two typeless components (with an additional 32 bits).

DXGI_FORMAT_X32_TYPELESS_G8X24_UINT:  A 32-bit typeless component, and two unsigned-integer components (with an additional 32 bits).

DXGI_FORMAT_R10G10B10A2_TYPELESS:  A four-component, 32-bit typeless format.

DXGI_FORMAT_R10G10B10A2_UNORM:  A four-component, 32-bit unsigned-integer format.

DXGI_FORMAT_R10G10B10A2_UINT:  A four-component, 32-bit unsigned-integer format.

DXGI_FORMAT_R11G11B10_FLOAT:  A three-component, 32-bit floating-point format.

DXGI_FORMAT_R8G8B8A8_TYPELESS:  A three-component, 32-bit typeless format.

DXGI_FORMAT_R8G8B8A8_UNORM:  A four-component, 32-bit unsigned-integer format.

DXGI_FORMAT_R8G8B8A8_UNORM_SRGB:  A four-component, 32-bit unsigned-normalized integer sRGB format.

DXGI_FORMAT_R8G8B8A8_UINT:  A four-component, 32-bit unsigned-integer format.

DXGI_FORMAT_R8G8B8A8_SNORM:  A three-component, 32-bit signed-integer format.

DXGI_FORMAT_R8G8B8A8_SINT:  A three-component, 32-bit signed-integer format.

DXGI_FORMAT_R16G16_TYPELESS:  A two-component, 32-bit typeless format.

DXGI_FORMAT_R16G16_FLOAT:  A two-component, 32-bit floating-point format.

DXGI_FORMAT_R16G16_UNORM:  A two-component, 32-bit unsigned-integer format.

DXGI_FORMAT_R16G16_UINT:  A two-component, 32-bit unsigned-integer format.

DXGI_FORMAT_R16G16_SNORM:  A two-component, 32-bit signed-integer format.

DXGI_FORMAT_R16G16_SINT:  A two-component, 32-bit signed-integer format.

DXGI_FORMAT_R32_TYPELESS:  A single-component, 32-bit typeless format.

DXGI_FORMAT_D32_FLOAT:  A single-component, 32-bit floating-point format.

DXGI_FORMAT_R32_FLOAT:  A single-component, 32-bit floating-point format.

DXGI_FORMAT_R32_UINT:  A single-component, 32-bit unsigned-integer format.

DXGI_FORMAT_R32_SINT:  A single-component, 32-bit signed-integer format.

DXGI_FORMAT_R24G8_TYPELESS:  A two-component, 32-bit typeless format.

DXGI_FORMAT_D24_UNORM_S8_UINT:  A 32-bit z-buffer format that uses 24 bits for the depth channel and 8 bits for the stencil channel.

DXGI_FORMAT_R24_UNORM_X8_TYPELESS:  A 32-bit format, that contains a 24-bit, single-component, unsigned-normalized integer, with an additional typeless 8 bits.

DXGI_FORMAT_X24_TYPELESS_G8_UINT:  A 32-bit format, that contains a 24-bit, single-component, typeless format, with an additional 8-bit unsigned integer component.

DXGI_FORMAT_R8G8_TYPELESS:  A two-component, 16-bit typeless format.

DXGI_FORMAT_R8G8_UNORM:  A two-component, 16-bit unsigned-integer format.

DXGI_FORMAT_R8G8_UINT:  A two-component, 16-bit unsigned-integer format.

DXGI_FORMAT_R8G8_SNORM:  A two-component, 16-bit signed-integer format.

DXGI_FORMAT_R8G8_SINT:  A two-component, 16-bit signed-integer format.

DXGI_FORMAT_R16_TYPELESS:  A single-component, 16-bit typeless format.

DXGI_FORMAT_R16_FLOAT:  A single-component, 16-bit floating-point format.

DXGI_FORMAT_D16_UNORM:  A single-component, 16-bit unsigned-normalized integer format.

DXGI_FORMAT_R16_UNORM:  A single-component, 16-bit unsigned-integer format.

DXGI_FORMAT_R16_UINT:  A single-component, 16-bit unsigned-integer format.

DXGI_FORMAT_R16_SNORM:  A single-component, 16-bit signed-integer format.

DXGI_FORMAT_R16_SINT:  A single-component, 16-bit signed-integer format.

DXGI_FORMAT_R8_TYPELESS:  A single-component, 8-bit typeless format.

DXGI_FORMAT_R8_UNORM:  A single-component, 8-bit unsigned-integer format.

DXGI_FORMAT_R8_UINT:  A single-component, 8-bit unsigned-integer format.

DXGI_FORMAT_R8_SNORM:  A single-component, 8-bit signed-integer format.

DXGI_FORMAT_R8_SINT:  A single-component, 8-bit signed-integer format.

DXGI_FORMAT_A8_UNORM:  A single-component, 8-bit unsigned-integer format.

DXGI_FORMAT_R1_UNORM:  A single-component, 1-bit unsigned-normalized integer format.

DXGI_FORMAT_R9G9B9E5_SHAREDEXP:  A four-component, 32-bit floating-point format.

DXGI_FORMAT_R8G8_B8G8_UNORM:  A four-component, 32-bit unsigned-normalized integer format.

DXGI_FORMAT_G8R8_G8B8_UNORM:  A four-component, 32-bit unsigned-normalized integer format.

DXGI_FORMAT_BC1_TYPELESS:  A four-component typeless block-compression format.

DXGI_FORMAT_BC1_UNORM:  A four-component block-compression format.

DXGI_FORMAT_BC1_UNORM_SRGB:  A four-component block-compression format for sRGB data.

DXGI_FORMAT_BC2_TYPELESS:  A four-component typeless block-compression format.

DXGI_FORMAT_BC2_UNORM:  A four-component block-compression format.

DXGI_FORMAT_BC2_UNORM_SRGB:  A four-component block-compression format for sRGB data.

DXGI_FORMAT_BC3_TYPELESS:  A four-component typeless block-compression format.

DXGI_FORMAT_BC3_UNORM:  A four-component block-compression format.

DXGI_FORMAT_BC3_UNORM_SRGB:  A four-component block-compression format for sRGB data.

DXGI_FORMAT_BC4_TYPELESS:  A one-component typeless block-compression format.

DXGI_FORMAT_BC4_UNORM:  A one-component block-compression format.

DXGI_FORMAT_BC4_SNORM:  A one-component block-compression format.

DXGI_FORMAT_BC5_TYPELESS:  A two-component typeless block-compression format.

DXGI_FORMAT_BC5_UNORM:  A two-component block-compression format.

DXGI_FORMAT_BC5_SNORM:  A two-component block-compression format.

DXGI_FORMAT_B5G6R5_UNORM:  A three-component, 16-bit unsigned-normalized integer format.

DXGI_FORMAT_B5G5R5A1_UNORM:  A four-component, 16-bit unsigned-normalized integer format that supports 1-bit alpha.

DXGI_FORMAT_B8G8R8A8_UNORM:  A four-component, 16-bit unsigned-normalized integer format that supports 8-bit alpha.

DXGI_FORMAT_B8G8R8X8_UNORM:  A four-component, 16-bit unsigned-normalized integer format.