Поделиться через


перечисление DXGI_FORMAT (dxgiformat.h)

Определяет константы, определяющие форматы данных ресурсов, включая полностью типизированные и бестипные форматы. Список модификаторов в нижней части страницы более полно описывает каждый тип формата.

Синтаксис

typedef enum DXGI_FORMAT {
  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 = 189,
  DXGI_FORMAT_SAMPLER_FEEDBACK_MIP_REGION_USED_OPAQUE = 190,
  DXGI_FORMAT_FORCE_UINT = 0xffffffff
} ;

Константы

 
DXGI_FORMAT_UNKNOWN
Значение: 0
Формат не известен.
DXGI_FORMAT_R32G32B32A32_TYPELESS
Значение: 1
Четырехкомпонентный 128-разрядный формат без типа, поддерживающий 32 бита на канал, включая альфа-канал. ¹
DXGI_FORMAT_R32G32B32A32_FLOAT
Значение: 2
Четырехкомпонентный 128-разрядный формат с плавающей запятой, поддерживающий 32 бита на канал, включая альфа-канал. 15 8
DXGI_FORMAT_R32G32B32A32_UINT
Значение: 3
Четырехкомпонентный 128-разрядный целочисленный формат без знака, поддерживающий 32 бита на канал, включая альфа-канал. ¹
DXGI_FORMAT_R32G32B32A32_SINT
Значение: 4
Четырехкомпонентный 128-разрядный целочисленный формат со знаком, который поддерживает 32 бита на канал, включая альфа-канал. ¹
DXGI_FORMAT_R32G32B32_TYPELESS
Значение: 5
Трехкомпонентный 96-разрядный формат без типа, поддерживающий 32 бита на канал цвета.
DXGI_FORMAT_R32G32B32_FLOAT
Значение: 6
Трехкомпонентный 96-разрядный формат с плавающей запятой, поддерживающий 32 бита на канал цветов.58
DXGI_FORMAT_R32G32B32_UINT
Значение: 7
Трехкомпонентный 96-разрядный формат без знака, поддерживающий 32 бита на канал цвета.
DXGI_FORMAT_R32G32B32_SINT
Значение: 8
Трехкомпонентный 96-разрядный целочисленный формат со знаком, который поддерживает 32 бита для каждого канала цвета.
DXGI_FORMAT_R16G16B16A16_TYPELESS
Значение: 9
Четырехкомпонентный 64-разрядный формат без типа, поддерживающий 16 бит на канал, включая альфа-канал.
DXGI_FORMAT_R16G16B16A16_FLOAT
Значение: 10
Четырехкомпонентный 64-разрядный формат с плавающей запятой, поддерживающий 16 бит на канал, включая альфа-канал.5,7
DXGI_FORMAT_R16G16B16A16_UNORM
Значение: 11
Четырехкомпонентный 64-разрядный формат без знака, нормализованный целочисленный формат, поддерживающий 16 бит на канал, включая альфа.
DXGI_FORMAT_R16G16B16A16_UINT
Значение: 12
Четырехкомпонентный 64-разрядный формат без знака, поддерживающий 16 бит на канал, включая альфа-канал.
DXGI_FORMAT_R16G16B16A16_SNORM
Значение: 13
Четырехкомпонентный 64-разрядный формат со знаком с нормализованным целым числом, поддерживающий 16 бит на канал, включая альфа-канал.
DXGI_FORMAT_R16G16B16A16_SINT
Значение: 14
Четырехкомпонентный 64-разрядный целочисленный формат со знаком, поддерживающий 16 бит на канал, включая альфа-канал.
DXGI_FORMAT_R32G32_TYPELESS
Значение: 15
Двухкомпонентный 64-разрядный формат без типа, который поддерживает 32 бита для красного канала и 32 бита для зеленого канала.
DXGI_FORMAT_R32G32_FLOAT
Значение: 16
Двухкомпонентный 64-разрядный формат с плавающей запятой, поддерживающий 32 бита для красного канала и 32 бита для зеленого канала.58
DXGI_FORMAT_R32G32_UINT
Значение: 17
Двухкомпонентный 64-разрядный формат без знака, который поддерживает 32 бита для красного канала и 32 бита для зеленого канала.
DXGI_FORMAT_R32G32_SINT
Значение: 18
Двухкомпонентный 64-разрядный целочисленный формат со знаком, который поддерживает 32 бита для красного канала и 32 бита для зеленого канала.
DXGI_FORMAT_R32G8X24_TYPELESS
Значение: 19
Двухкомпонентный 64-разрядный формат без типа, поддерживающий 32 бита для красного канала, 8 битов для зеленого канала и 24-разрядных битов не используются.
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 бит для каждого цвета и 2 бита для альфа-канала.
DXGI_FORMAT_R10G10B10A2_UNORM
Значение: 24
Четырехкомпонентный 32-разрядный формат без знака, нормализованный целочисленный формат, поддерживающий 10 бит для каждого цвета и 2 бита для альфа-символов.
DXGI_FORMAT_R10G10B10A2_UINT
Значение: 25
Четырехкомпонентный 32-разрядный целочисленный формат без знака, который поддерживает 10 бит для каждого цвета и 2 бита для альфа..
DXGI_FORMAT_R11G11B10_FLOAT
Значение: 26
Три числа с плавающей запятой с частичной точностью, закодированные в одно 32-разрядное значение (вариант s10e5, который является битом знака, 10-разрядной мантиссой и 5-разрядной предвзятостью (15) экспонент).
Нет битов знака, и существует 5-разрядная предвзятая (15) экспонент для каждого канала, 6-разрядная мантисса для R и G, а также 5-разрядная мантисса для B, как показано на следующем рисунке.5,7

Иллюстрация битов в трех числах с плавающей запятой частичной точности, что показывает, что биты знака отсутствуют.
DXGI_FORMAT_R8G8B8A8_TYPELESS
Значение: 27
Четырехкомпонентный 32-разрядный формат без типа, поддерживающий 8 бит на канал, включая альфа-канал.
DXGI_FORMAT_R8G8B8A8_UNORM
Значение: 28
Четырехкомпонентный 32-разрядный формат без знака, нормализованный целочисленный формат, поддерживающий 8 битов на канал, включая альфа-канал.
DXGI_FORMAT_R8G8B8A8_UNORM_SRGB
Значение: 29
Четырехкомпонентный 32-разрядный формат целочисленного целого числа без знака, поддерживающий 8 битов на канал, включая альфа-канал.
DXGI_FORMAT_R8G8B8A8_UINT
Значение: 30
Четырехкомпонентный 32-разрядный формат без знака, поддерживающий 8 бит на канал, включая альфа-канал.
DXGI_FORMAT_R8G8B8A8_SNORM
Значение: 31
Четырехкомпонентный 32-разрядный формат целочисленного целого числа со знаком, поддерживающий 8 битов на канал, включая альфа-канал.
DXGI_FORMAT_R8G8B8A8_SINT
Значение: 32
Четырехкомпонентный 32-разрядный целочисленный формат со знаком, который поддерживает 8 битов на канал, включая альфа-канал.
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 бита для глубины.58
DXGI_FORMAT_R32_FLOAT
Значение: 41
Однокомпонентный 32-разрядный формат с плавающей запятой, поддерживающий 32 бита для красного канала.58
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
Однокомпонентный 8-разрядный формат целочисленного значения без знака только для альфа-символов.
DXGI_FORMAT_R1_UNORM
Значение: 66
Однокомпонентный 1-разрядный формат целого числа без знака, поддерживающий 1 бит для красного канала. ².
DXGI_FORMAT_R9G9B9E5_SHAREDEXP
Значение: 67
Три числа с плавающей запятой частичной точности, закодированные в одно 32-разрядное значение, все совместно использует один и тот же 5-разрядный экспонент (вариант s10e5, который представляет собой бит, 10-разрядную мантиссу и 5-разрядную предвзятость (15) экспонент).
Нет бита знака, и существует общий 5-разрядный предвзятый (15) экспонент и 9-разрядная мантисса для каждого канала, как показано на следующем рисунке. 6,7.

Иллюстрация битов в трех числах с плавающей запятой с частичной точностью, которая показывает общий 5-разрядный экспонент и 9-разрядную мантисса во всех каналах.
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-разрядный формат без знака, нормализованный целочисленный формат, который поддерживает 5 битов для каждого канала цвета и 1-разрядного альфа-канала.

Direct3D 10 до Direct3D 11: Это значение определяется для DXGI. Однако устройства Direct3D 10, 10.1 или 11 не поддерживают этот формат.

Direct3D 11.1: это значение не поддерживается до Windows 8.
DXGI_FORMAT_B8G8R8A8_UNORM
Значение: 87
Четырехкомпонентный 32-разрядный формат без знака, нормализованный целочисленный формат, поддерживающий 8 бит для каждого канала цвета и 8-разрядного альфа-канала.
DXGI_FORMAT_B8G8R8X8_UNORM
Значение: 88
Четырехкомпонентный 32-разрядный формат без знака, нормализованный целочисленный формат, поддерживающий 8 бит для каждого канала цветов и 8 бит неиспользуемых.
DXGI_FORMAT_R10G10B10_XR_BIAS_A2_UNORM
Значение: 89
Четырехкомпонентный 32-разрядный 2,8-предвзятый формат фиксированной точки, поддерживающий 10 бит для каждого канала цветов и 2-разрядного альфа-канала.
DXGI_FORMAT_B8G8R8A8_TYPELESS
Значение: 90
Четырехкомпонентный 32-разрядный формат без типов, поддерживающий 8 бит для каждого канала, включая альфа-канал. ⁴
DXGI_FORMAT_B8G8R8A8_UNORM_SRGB
Значение: 91
Четырехкомпонентный 32-разрядный стандартный формат RGB без знака, поддерживающий 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. Для uaVs дополнительный допустимый формат представления DXGI_FORMAT_R32_UINT. Используя DXGI_FORMAT_R32_UINT для uaV, вы можете читать и писать, а не писать только для 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. Для uaVs дополнительный допустимый формат представления DXGI_FORMAT_R32_UINT. Используя DXGI_FORMAT_R32_UINT для uaV, вы можете читать и писать, а не писать только для DXGI_FORMAT_R10G10B10A2_UNORM и DXGI_FORMAT_R10G10B10A2_UINT. Поддерживаемые типы представлений : SRV и UAV. Одно представление обеспечивает простое сопоставление всей поверхности. Сопоставление канала представления — U->R10,
Y->G10,
V->B10,
И А->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. Для представления данных хрома сопоставление с каналом представления — U->R8 и
V->G8.

Дополнительные сведения о форматах YUV для отрисовки видео см. в рекомендуемых 8-разрядных форматов YUV дляотрисовки видео.

Ширина и высота должны быть даже. Промежуточные ресурсы Direct3D 11 и параметры initData для этого формата используются (rowPitch * (height + (height / 2))) байт. Первый (SysMemPitch * height) — это плоскость Y, остальные байты (SysMemPitch * (высота / 2)) — это УФ-плоскость.

Приложение с использованием форматов YUY 4:2:0 должно сопоставлять плоскость luma (Y) отдельно от плоскостей chroma (UV). Разработчики делают это путем вызова ID3D12Device::CreateShaderResourceView дважды для одной текстуры и передачи форматов 1-канала и 2-каналов. Передача формата 1-канала, совместимого с плоскостем Y, сопоставляется только с плоскостем Y. Передача формата 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 (учитывая, что этот формат ресурса видео является 10-разрядным форматом, использующим 16 бит). При необходимости код шейдера приложений должен применяться вручную. С точки зрения среды выполнения DXGI_FORMAT_P010 не отличается от DXGI_FORMAT_P016. Допустимые форматы представления данных хрома (ширина и высота каждого из 1/2 представления света) для этого формата ресурсов видео DXGI_FORMAT_R16G16_UNORM и DXGI_FORMAT_R16G16_UINT. Для uaVs дополнительный допустимый формат представления данных хрома DXGI_FORMAT_R32_UINT. Используя DXGI_FORMAT_R32_UINT для uaV, вы можете читать и писать, а не только писать для DXGI_FORMAT_R16G16_UNORM и DXGI_FORMAT_R16G16_UINT. Поддерживаемые типы представлений: SRV, RTV и UAV. Для представления данных яркости сопоставление с каналом представления — Y->R16. Для представления данных хрома сопоставление с каналом представления — U->R16 и
V->G16.

Дополнительные сведения о форматах YUV для отрисовки видео см. в рекомендуемых 8-разрядных форматов YUV дляотрисовки видео.

Ширина и высота должны быть даже. Промежуточные ресурсы Direct3D 11 и параметры initData для этого формата используются (rowPitch * (height + (height / 2))) байт. Первый (SysMemPitch * height) — это плоскость Y, остальные байты (SysMemPitch * (высота / 2)) — это УФ-плоскость.

Приложение с использованием форматов YUY 4:2:0 должно сопоставлять плоскость luma (Y) отдельно от плоскостей chroma (UV). Разработчики делают это путем вызова ID3D12Device::CreateShaderResourceView дважды для одной текстуры и передачи форматов 1-канала и 2-каналов. Передача формата 1-канала, совместимого с плоскостем Y, сопоставляется только с плоскостем Y. Передача формата 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. Для uaVs дополнительный допустимый формат представления данных хрома DXGI_FORMAT_R32_UINT. Используя DXGI_FORMAT_R32_UINT для uaV, вы можете читать и писать, а не только писать для DXGI_FORMAT_R16G16_UNORM и DXGI_FORMAT_R16G16_UINT. Поддерживаемые типы представлений: SRV, RTV и UAV. Для представления данных яркости сопоставление с каналом представления — Y->R16. Для представления данных хрома сопоставление с каналом представления — U->R16 и
V->G16.

Дополнительные сведения о форматах YUV для отрисовки видео см. в рекомендуемых 8-разрядных форматов YUV дляотрисовки видео.

Ширина и высота должны быть даже. Промежуточные ресурсы Direct3D 11 и параметры initData для этого формата используются (rowPitch * (height + (height / 2))) байт. Первый (SysMemPitch * height) — это плоскость Y, остальные байты (SysMemPitch * (высота / 2)) — это УФ-плоскость.

Приложение с использованием форматов YUY 4:2:0 должно сопоставлять плоскость luma (Y) отдельно от плоскостей chroma (UV). Разработчики делают это путем вызова ID3D12Device::CreateShaderResourceView дважды для одной текстуры и передачи форматов 1-канала и 2-каналов. Передача формата 1-канала, совместимого с плоскостем Y, сопоставляется только с плоскостем Y. Передача формата 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 в том, что макет данных в ресурсе полностью непрозрачн для приложений. Приложения не могут использовать ЦП для сопоставления ресурса, а затем получить доступ к данным в ресурсе. С этим форматом нельзя использовать шейдеры. Из-за этого устаревшее оборудование, поддерживающее макет, отличный от NV12 4:2:0 (например, YV12 и т. д.), можно использовать. Кроме того, новое оборудование, которое имеет реализацию 4:2:0 лучше, чем NV12, можно использовать, если приложение не нуждается в данных в стандартном макете.

Дополнительные сведения о форматах YUV для отрисовки видео см. в рекомендуемых 8-разрядных форматов YUV дляотрисовки видео.

Ширина и высота должны быть даже. Промежуточные ресурсы Direct3D 11 и параметры initData для этого формата используются (rowPitch * (height + (height / 2))) байт.

Приложение с использованием форматов YUY 4:2:0 должно сопоставлять плоскость luma (Y) отдельно от плоскостей chroma (UV). Разработчики делают это путем вызова ID3D12Device::CreateShaderResourceView дважды для одной текстуры и передачи форматов 1-канала и 2-каналов. Передача формата 1-канала, совместимого с плоскостем Y, сопоставляется только с плоскостем Y. Передача формата 2-каналов, совместимого с УФ-плоскостями (вместе), сопоставляет только плоскости с тобой и V в виде единого представления ресурсов.

Direct3D 11.1: это значение не поддерживается до Windows 8.
DXGI_FORMAT_YUY2
Значение: 107
Наиболее распространенный формат ресурса видео в YUV 4:2:2. Допустимые форматы представлений для этого формата ресурсов видео являются DXGI_FORMAT_R8G8B8A8_UNORM и DXGI_FORMAT_R8G8B8A8_UINT. Для uaVs дополнительный допустимый формат представления DXGI_FORMAT_R32_UINT. Используя DXGI_FORMAT_R32_UINT для uaV, вы можете читать и писать, а не писать только для DXGI_FORMAT_R8G8B8A8_UNORM и DXGI_FORMAT_R8G8B8A8_UINT. Поддерживаемые типы представлений : SRV и UAV. Одно представление обеспечивает простое сопоставление всей поверхности. Сопоставление канала представления — Y0->R8,
U0->G8,
Y1->B8,
и V0->A8.

Уникальный допустимый формат представления для этого формата ресурса видео DXGI_FORMAT_R8G8_B8G8_UNORM. В этом формате ширина представления, как представляется, в два раза больше, чем представление DXGI_FORMAT_R8G8B8A8_UNORM или DXGI_FORMAT_R8G8B8A8_UINT, когда оборудование восстанавливает RGBA автоматически при чтении и перед фильтрацией. Это поведение оборудования 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 (учитывая, что этот формат ресурса видео является 10-разрядным форматом, использующим 16 бит). При необходимости код шейдера приложений должен применяться вручную. С точки зрения среды выполнения 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. Для представления данных хрома сопоставление с каналом представления — U->R8 и
V->G8.

Дополнительные сведения о форматах YUV для отрисовки видео см. в рекомендуемых 8-разрядных форматов YUV дляотрисовки видео.

Ширина должна быть кратной из 4. Промежуточные ресурсы Direct3D11 и параметры initData для этого формата используются (rowPitch * height * 2) байт. Первый (SysMemPitch * height) — это плоскость Y, следующая ((SysMemPitch/ 2) * высота) — это УФ-плоскость, а остальные — заполнение.

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
8-разрядный формат поддона, используемый для поддонизированных данных RGB, когда процессор обрабатывает данные ISDB-T и для поддонированных данных YUV при обработке данных BluRay процессора.

Дополнительные сведения о форматах YUV для отрисовки видео см. в рекомендуемых 8-разрядных форматов YUV дляотрисовки видео.

Direct3D 11.1: это значение не поддерживается до Windows 8.
DXGI_FORMAT_A8P8
Значение: 114
8-разрядный поддонизированный формат с 8 битами альфа,который используется для поддонированных данных YUV, когда процессор обрабатывает данные BluRay.

Дополнительные сведения о форматах YUV для отрисовки видео см. в рекомендуемых 8-разрядных форматов YUV дляотрисовки видео.

Direct3D 11.1: это значение не поддерживается до Windows 8.
DXGI_FORMAT_B4G4R4A4_UNORM
Значение: 115
Четырехкомпонентный 16-разрядный целочисленный формат без знака, поддерживающий 4 бита для каждого канала, включая альфа.

Direct3D 11.1: это значение не поддерживается до Windows 8.
DXGI_FORMAT_P208
Значение: 130
Формат видео; 8-разрядная версия гибридного планарной версии формата 4:2:2.
DXGI_FORMAT_V208
Значение: 131
8-разрядный формат отрисовки YCbCrA 4:4.
DXGI_FORMAT_V408
Значение: 132
8-разрядный формат отрисовки YCbCrA 4:4:4.
DXGI_FORMAT_SAMPLER_FEEDBACK_MIN_MIP_OPAQUE
Значение: 189
ТБD
DXGI_FORMAT_SAMPLER_FEEDBACK_MIP_REGION_USED_OPAQUE
Значение: 190
ТБD
DXGI_FORMAT_FORCE_UINT
Значение: 0xffffffff
Заставляет это перечисление скомпилировать до 32 битов. Без этого значения некоторые компиляторы позволяют этому перечислению компилироваться в размер, отличный от 32 битов. Это значение не используется.

Замечания

DXGI_FORMAT_A4B4G4R4_UNORM (значение 191) — это четырехкомпонентный, 16-разрядный целочисленный формат без знака, который поддерживает 4 бита для каждого канала, включая альфа.

порядок байтов (LSB/MSB)

Большинство форматов имеют компоненты, выровненные по байтам, и компоненты находятся в порядке C-массива (наименьший адрес приходится первым). Для тех форматов, которые не имеют компонентов с выравниванием по 2, первый именованный компонент находится в наименее значимых битах.

переносимое кодирование для Endian-Independence

Вместо того чтобы настраивать порядок байтов больших и маленьких байтов в системе, следует написать переносимый код, как показано ниже.

// 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) должен иметь размер, кратный 2 в измерении x.
  4. Формат недоступен в Direct3D 10 и Direct3D 10.1
  5. Эти форматы с плавающей запятой добавляются в мантиссу с подразумеваемым 1. Если экспонент не равен 0, 1.0 добавляется в мантиссу перед применением экспонента.
  6. Эти форматы с плавающей запятой не имеют подразумеваемого 1, добавленного в их мантиссу.
  7. Поддержка денорма: 9, 10, 11 и 16-разрядные форматы с плавающей запятой поддерживают денормы.
  8. Нет поддержки денорма: 32 и 64-разрядные форматы с плавающей запятой сбрасывают денормы до нуля.
В следующих разделах приведены списки форматов, которые поддерживают определенные уровни компонентов оборудования : Список типов DirectXMath, сопоставленных со значениями DXGI_FORMAT, см. в внутреннихбиблиотеки DirectXMath.

Модификаторы формата

Каждое значение перечисления содержит модификатор формата, описывающий тип данных.

Модификаторы формата Описание
_ПЛАВАТЬ Значение с плавающей запятой; 32-разрядные форматы с плавающей запятой используют одноточие IEEE 754 (формат s23e8): бит подписи, 8-разрядная предвзятость (127) и 23-разрядная мантисса. 16-разрядные форматы с плавающей запятой используют пол-точность (формат s10e5): бит знака, 5-разрядная предвзятость (15) экспонент и 10-разрядная мантисса.
_SINT Целое число со знаком двух значений. Например, 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. Дополнительные сведения см. в стандарте цвета SRGB, IEC 61996-2-1, в IEC (Международная электротехническая комиссия).

Преобразование в пространство SRGB или из нее автоматически выполняется функциями текстуры D3DX10 или D3DX9. Если формат с _SRGB имеет канал A, канал A хранится в данных Гамма-1.0f; Каналы R, G и B в формате хранятся в данных sRGB Гамма (линейный сегмент + 2,4 питания).
_TYPELESS Безтипные данные с определенным числом битов. Форматы без типов предназначены для создания бестипных ресурсов; То есть ресурс, размер которого известен, но тип данных которого еще не определен. Если ресурс без типа привязан к шейдеру, приложение или шейдер должны разрешать тип формата (который должен соответствовать количеству битов на компонент в формате без типа).

Типизированный формат содержит один или несколько подформатов; каждая подформата разрешает тип данных. Например, в группе R32G32B32, которая определяет типы для трехкомпонентных 96-разрядных данных, существует один бестипный формат и три полностью типизированных подформата.


DXGI_FORMAT_R32G32B32_TYPELESS,
DXGI_FORMAT_R32G32B32_FLOAT,
DXGI_FORMAT_R32G32B32_UINT,
DXGI_FORMAT_R32G32B32_SINT,

_UINT Целое число без знака. Например, 3-разрядная UINT представляет значения 0, 1, 2, 3, 4, 5, 6, 7.
_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), обычных карт и высот до доли исходного размера. К этим типам сжатия относятся следующие:
  • Shared-Exponent формате HDR (RGBE)
  • Новые форматы Block-Compressed 1-2 канала UNORM/SNORM
Форматы сжатия блоков можно использовать для любого из типов трехмерных или трехмерных текстур (Texture2D, Texture2DArray, Texture3D или TextureCube), включая поверхности mipmap. Методы сжатия блоков требуют, чтобы размеры текстуры были кратными 4 (так как реализация сжимается на блоках 4x4 texels). В примере текстур сжатые форматы всегда распаковываются перед фильтрацией текстур.

Требования

Требование Ценность
заголовка dxgiformat.h

См. также

перечисления DXGI