перечисление 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,
DXGI_FORMAT_SAMPLER_FEEDBACK_MIP_REGION_USED_OPAQUE,
DXGI_FORMAT_FORCE_UINT = 0xffffffff
} ;
Константы
DXGI_FORMAT_UNKNOWN Значение: 0 Формат неизвестен. |
DXGI_FORMAT_R32G32B32A32_TYPELESS Значение: 1 Четырехкомпонентный 128-разрядный бестипный формат, поддерживающий 32 бита на канал, включая альфа-канал. ¹ |
DXGI_FORMAT_R32G32B32A32_FLOAT Значение: 2 Четырехкомпонентный 128-разрядный формат с плавающей запятой, поддерживающий 32 бита на канал, включая альфа-канал. 1,5,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 бита на канал цвета. 5,8 |
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-разрядный 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 бита для зеленого канала. 5,8 |
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-разрядный 32-разрядный формат unsigned-normalized-integer, который поддерживает 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-разрядный формат sRGB с целым числом без знака, поддерживающим 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-разрядный формат unsigned-normalized-integer, который поддерживает 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-разрядный формат unsigned-normalized-integer, который поддерживает 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-разрядный формат unsigned-normalized-integer, который поддерживает 16 бит для глубины. |
DXGI_FORMAT_R16_UNORM Значение: 56 Однокомпонентный 16-разрядный формат unsigned-normalized-integer, который поддерживает 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. |
DXGI_FORMAT_R8G8_B8G8_UNORM Значение: 68 Четырехкомпонентный 32-разрядный формат unsigned-normalized-integer. Этот упакованный формат RGB аналогит формату UYVY. Каждый 32-разрядный блок описывает пару пикселей: (R8, G8, B8) и (R8, G8, B8), где значения R8/B8 повторяются, а значения G8 уникальны для каждого пикселя. ³ Ширина должна быть четной. |
DXGI_FORMAT_G8R8_G8B8_UNORM Значение: 69 Четырехкомпонентный 32-разрядный формат unsigned-normalized-integer. Этот упакованный формат 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-разрядный формат unsigned-normalized-integer, который поддерживает 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-разрядный 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. Для БПЛА дополнительный допустимый формат представления — DXGI_FORMAT_R32_UINT. С помощью 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. Для БПЛА дополнительный допустимый формат представления — DXGI_FORMAT_R32_UINT. Используя 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>. Для представления данных хрома сопоставление с каналом представления — U-R8> и V-G8>. Дополнительные сведения о форматах YUV для отрисовки видео см. в разделе Рекомендуемые 8-разрядные форматы YUV для отрисовки видео. Ширина и высота должны быть четные. Промежуточные ресурсы Direct3D 11 и параметры initData для этого формата используют (rowPitch * (высота + (высота / 2))) байт. Первые байты (SysMemPitch * height) — плоскость Y, остальные байты (SysMemPitch * (высота / 2)) — плоскость UV. Приложение, использующий формат YUY 4:2:0, должно сопоставлять плоскость luma (Y) отдельно от плоскостей хрома (UV). Разработчики делают это, дважды вызывая ID3D12Device::CreateShaderResourceView для одной и той же текстуры и передавая 1-канальный и 2-канальный форматы. Передача в 1-канальный формат, совместимый с плоскостью Y, сопоставляет только плоскость Y. Передача двухканачного формата, совместимого с УФ-плоскостями (вместе), сопоставляет только плоскости you и 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. Для БПЛА DXGI_FORMAT_R32_UINT дополнительный допустимый формат представления данных хрома. Используя DXGI_FORMAT_R32_UINT для БПЛА, вы можете выполнять чтение и запись, а не просто для DXGI_FORMAT_R16G16_UNORM и DXGI_FORMAT_R16G16_UINT. Поддерживаемые типы представлений: SRV, RTV и UAV. Для представления данных яркости сопоставление с каналом представления равно Y-R16>. Для представления данных хрома сопоставление с каналом представления — U-R16> и V-G16>. Дополнительные сведения о форматах YUV для отрисовки видео см. в разделе Рекомендуемые 8-разрядные форматы YUV для отрисовки видео. Ширина и высота должны быть четные. Промежуточные ресурсы Direct3D 11 и параметры initData для этого формата используют (rowPitch * (высота + (высота / 2))) байт. Первые байты (SysMemPitch * height) — плоскость Y, остальные байты (SysMemPitch * (высота / 2)) — плоскость UV. Приложение, использующий формат YUY 4:2:0, должно сопоставлять плоскость luma (Y) отдельно от плоскостей хрома (UV). Разработчики делают это, дважды вызывая ID3D12Device::CreateShaderResourceView для одной и той же текстуры и передавая 1-канальный и 2-канальный форматы. Передача в 1-канальный формат, совместимый с плоскостью Y, сопоставляет только плоскость Y. Передача двухканачного формата, совместимого с УФ-плоскостями (вместе), сопоставляет только плоскости you и 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. Для БПЛА DXGI_FORMAT_R32_UINT дополнительный допустимый формат представления данных хрома. Используя DXGI_FORMAT_R32_UINT для БПЛА, вы можете выполнять чтение и запись, а не просто для DXGI_FORMAT_R16G16_UNORM и DXGI_FORMAT_R16G16_UINT. Поддерживаемые типы представлений: SRV, RTV и UAV. Для представления данных яркости сопоставление с каналом представления равно Y-R16>. Для представления данных хрома сопоставление с каналом представления — U-R16> и V-G16>. Дополнительные сведения о форматах YUV для отрисовки видео см. в разделе Рекомендуемые 8-разрядные форматы YUV для отрисовки видео. Ширина и высота должны быть четные. Промежуточные ресурсы Direct3D 11 и параметры initData для этого формата используют (rowPitch * (высота + (высота / 2))) байт. Первые байты (SysMemPitch * height) — плоскость Y, остальные байты (SysMemPitch * (высота / 2)) — плоскость UV. Приложение, использующий формат YUY 4:2:0, должно сопоставлять плоскость luma (Y) отдельно от плоскостей хрома (UV). Разработчики делают это, дважды вызывая ID3D12Device::CreateShaderResourceView для одной и той же текстуры и передавая 1-канальный и 2-канальный форматы. Передача в 1-канальный формат, совместимый с плоскостью Y, сопоставляет только плоскость Y. Передача двухканачного формата, совместимого с УФ-плоскостями (вместе), сопоставляет только плоскости you и V как единое представление ресурсов. Direct3D 11.1: Это значение не поддерживается до Windows 8. |
DXGI_FORMAT_420_OPAQUE Значение: 106 8-разрядный формат видеоресурса для каждого канала в формате видеоресурса YUV 4:2:0. Этот формат является подвыбранным, где каждый пиксель имеет собственное значение Y, но каждый блок 2x2 пикселей использует одно значение you и V. Среда выполнения требует, чтобы ширина и высота всех ресурсов, созданных в этом формате, были кратны 2. Среда выполнения также требует, чтобы левый, правый, верхний и нижний члены любого rect, используемого для этого формата, были кратны 2. Этот формат отличается от DXGI_FORMAT_NV12 тем, что макет данных в ресурсе полностью непрозрачн для приложений. Приложения не могут использовать ЦП для сопоставления ресурса и последующего доступа к данным в ресурсе. В этом формате нельзя использовать шейдеры. Из-за такого поведения можно использовать устаревшее оборудование, поддерживающее макет 4:2:0 не NV12 (например, YV12 и т. д.). Кроме того, новое оборудование с реализацией 4:2:0 лучше, чем NV12, можно использовать, если приложению не требуется, чтобы данные были в стандартном макете. Дополнительные сведения о форматах YUV для отрисовки видео см. в разделе Рекомендуемые 8-разрядные форматы YUV для отрисовки видео. Ширина и высота должны быть четные. Промежуточные ресурсы Direct3D 11 и параметры initData для этого формата используют (rowPitch * (высота + (высота / 2))) байт. Приложение, использующий формат YUY 4:2:0, должно сопоставлять плоскость luma (Y) отдельно от плоскостей хрома (UV). Разработчики делают это, дважды вызывая ID3D12Device::CreateShaderResourceView для одной и той же текстуры и передавая 1-канальный и 2-канальный форматы. Передача в 1-канальный формат, совместимый с плоскостью Y, сопоставляет только плоскость Y. Передача двухканачного формата, совместимого с УФ-плоскостями (вместе), сопоставляет только плоскости you и V как единое представление ресурсов. Direct3D 11.1: Это значение не поддерживается до Windows 8. |
DXGI_FORMAT_YUY2 Значение: 107 Наиболее распространенный формат видеоресурсов YUV 4:2:2. Допустимые форматы представлений для этого формата видеоресурсов: DXGI_FORMAT_R8G8B8A8_UNORM и DXGI_FORMAT_R8G8B8A8_UINT. Для БПЛА дополнительный допустимый формат представления — DXGI_FORMAT_R32_UINT. С помощью 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. При таком формате представления ширина представления, как представляется, в два раза превышает 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 * высота * 2). Первые байты (SysMemPitch * height) являются плоскостью Y, следующие (SysMemPitch / 2) * height) — плоскость 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 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:4. |
DXGI_FORMAT_FORCE_UINT Значение: 0xffffffff Принудительно компилирует это перечисление до 32 бит в размере. Без этого значения некоторые компиляторы разрешали бы компиляцию этого перечисления в размер, отличный от 32 бит. Это значение не используется. |
Комментарии
Порядок байтов (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
Ограничения и примечания о форматах
Некоторые форматы имеют дополнительные ограничения и подразумеваемое поведение:- Ресурс, объявленный с 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).
- DXGI_FORMAT_R1_UNORM предназначен специально для фильтрации текста и должен использоваться с настраиваемым режимом фильтрации 8x8 для конкретного формата. При вызове функции выборки HLSL с помощью этого формата параметру смещения адреса необходимо задать значение (0,0).
- Ресурс, использующий формат вложенной выборки (например, DXGI_FORMAT_R8G8_B8G8), должен иметь размер, кратный 2 в измерении x.
- Формат недоступен в Direct3D 10 и Direct3D 10.1
- Эти форматы float имеют подразумеваемое значение 1, добавленное к мантиссе. Если показатель экспоненты не равен 0, то перед применением экспоненты в мантиссу добавляется 1,0.
- Эти форматы с плавающей запятой не имеют подразумеваемого значения 1, добавляемого в мантиссу.
- Поддержка денормов: 9, 10, 11 и 16-разрядные форматы с плавающей запятой поддерживают денормы.
- Поддержка денормов отсутствует: 32- и 64-разрядные форматы с плавающей запятой сбрасывают денормы до нуля.
- Поддержка формата DXGI для оборудования уровня компонентов Direct3D 12.1
- Поддержка формата DXGI для оборудования Уровня компонентов Direct3D 12.0
- Поддержка формата DXGI для оборудования Уровня компонентов Direct3D 11.1
- Поддержка формата DXGI для оборудования Уровня компонентов Direct3D 11.0
- Поддержка оборудования для форматов Direct3D 10Level9
- Поддержка оборудования для форматов Direct3D 10.1
- Поддержка оборудования для форматов Direct3D 10
Модификаторы формата
Каждое значение перечисления содержит модификатор формата, описывающий тип данных.Модификаторы формата | Описание |
---|---|
_ПЛАВАТЬ | Значение с плавающей запятой; В 32-разрядных форматах с плавающей запятой используется стандарт IEEE 754 с одной точностью (формат s23e8): бит знака, 8-разрядный смещением (127) и 23-разрядная мантисса. 16-разрядные форматы с плавающей запятой используют половинную точность (формат s10e5): бит знака, 5-разрядную степень смещением (15) и 10-разрядную мантиссу. |
_СИНТ | Целое число со знаком в дополнение к двум. Например, 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 Gamma (линейный сегмент + 2,4 питания). |
_TYPELESS | Нетипизированные данные с определенным количеством битов. Бестипные форматы предназначены для создания бестипных ресурсов; то есть ресурс, размер которого известен, но тип данных которого еще не определен полностью. Когда нетипизированный ресурс привязан к шейдеру, приложение или шейдер должен разрешать тип формата (который должен соответствовать количеству битов на компонент в бестипном формате).
Нетипичный формат содержит один или несколько подчиненных форматов; каждый подчиненный формат разрешает тип данных. Например, в группе R32G32B32, которая определяет типы для трехкомпонентных 96-разрядных данных, существует один бестипный формат и три полностью типизированных подчиненных формата.
|
_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 форматов UNORM/SNORM с 1-2 каналами
Требования
Верхняя часть | dxgiformat.h |