Condividi tramite


enumerazione DXGI_FORMAT (dxgiformat.h)

Formati di dati delle risorse, inclusi formati completamente tipizzato e senza tipi. Un elenco di modificatori nella parte inferiore della pagina descrive più completamente ogni tipo di formato.

Sintassi

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
} ;

Costanti

 
DXGI_FORMAT_UNKNOWN
Valore: 0
Il formato non è noto.
DXGI_FORMAT_R32G32B32A32_TYPELESS
Valore: 1
Formato senza tipo a quattro componenti a 128 bit che supporta 32 bit per canale incluso alfa. ¹
DXGI_FORMAT_R32G32B32A32_FLOAT
Valore: 2
Formato a virgola mobile a quattro componenti a 128 bit che supporta 32 bit per canale incluso alfa. 1,5,8
DXGI_FORMAT_R32G32B32A32_UINT
Valore: 3
Formato intero senza segno a quattro componenti a 128 bit che supporta 32 bit per canale incluso alfa. ¹
DXGI_FORMAT_R32G32B32A32_SINT
Valore: 4
Formato intero con segno a quattro componenti a 128 bit che supporta 32 bit per canale incluso alfa. ¹
DXGI_FORMAT_R32G32B32_TYPELESS
Valore: 5
Formato senza tipo a tre componenti a 96 bit che supporta 32 bit per canale di colore.
DXGI_FORMAT_R32G32B32_FLOAT
Valore: 6
Formato a virgola mobile a 96 bit che supporta 32 bit per canale di colore. 5,8
DXGI_FORMAT_R32G32B32_UINT
Valore: 7
Formato intero senza segno a tre componenti a 96 bit che supporta 32 bit per canale di colore.
DXGI_FORMAT_R32G32B32_SINT
Valore: 8
Formato intero con segno a tre componenti a 96 bit che supporta 32 bit per canale di colore.
DXGI_FORMAT_R16G16B16A16_TYPELESS
Valore: 9
Formato senza tipo a quattro componenti a 64 bit che supporta 16 bit per canale incluso alfa.
DXGI_FORMAT_R16G16B16A16_FLOAT
Valore: 10
Formato a virgola mobile a 64 bit che supporta 16 bit per canale incluso alfa. 5,7
DXGI_FORMAT_R16G16B16A16_UNORM
Valore: 11
Formato a quattro componenti, senza segno a 64 bit senza segno-normalizzato-intero che supporta 16 bit per canale incluso alfa.
DXGI_FORMAT_R16G16B16A16_UINT
Valore: 12
Formato intero a quattro componenti a 64 bit senza segno che supporta 16 bit per canale incluso alfa.
DXGI_FORMAT_R16G16B16A16_SNORM
Valore: 13
Formato a quattro componenti, con segno a 64 bit con segno normalizzato intero che supporta 16 bit per canale incluso alfa.
DXGI_FORMAT_R16G16B16A16_SINT
Valore: 14
Formato intero con segno a quattro componenti a 64 bit che supporta 16 bit per canale, incluso alfa.
DXGI_FORMAT_R32G32_TYPELESS
Valore: 15
Formato senza tipo a due componenti a 64 bit che supporta 32 bit per il canale rosso e 32 bit per il canale verde.
DXGI_FORMAT_R32G32_FLOAT
Valore: 16
Formato a virgola mobile a due componenti a 64 bit che supporta 32 bit per il canale rosso e 32 bit per il canale verde. 5,8
DXGI_FORMAT_R32G32_UINT
Valore: 17
Formato intero senza segno a due componenti a 64 bit che supporta 32 bit per il canale rosso e 32 bit per il canale verde.
DXGI_FORMAT_R32G32_SINT
Valore: 18
Formato intero con segno a due componenti a 64 bit che supporta 32 bit per il canale rosso e 32 bit per il canale verde.
DXGI_FORMAT_R32G8X24_TYPELESS
Valore: 19
Formato senza tipo a due componenti a 64 bit che supporta 32 bit per il canale rosso, 8 bit per il canale verde e 24 bit non utilizzati.
DXGI_FORMAT_D32_FLOAT_S8X24_UINT
Valore: 20
Componente a virgola mobile a 32 bit e due componenti interi senza segno (con un ulteriore 32 bit). Questo formato supporta profondità a 32 bit, stencil a 8 bit e 24 bit non usati.⁵
DXGI_FORMAT_R32_FLOAT_X8X24_TYPELESS
Valore: 21
Componente a virgola mobile a 32 bit e due componenti senza tipi (con 32 bit aggiuntivi). Questo formato supporta un canale rosso a 32 bit, 8 bit non utilizzati e 24 bit vengono inutilizzati.⁵
DXGI_FORMAT_X32_TYPELESS_G8X24_UINT
Valore: 22
Componente senza tipo a 32 bit e due componenti interi senza segno (con un ulteriore 32 bit). Questo formato ha 32 bit inutilizzati, 8 bit per canale verde e 24 bit non usati.
DXGI_FORMAT_R10G10B10A2_TYPELESS
Valore: 23
Formato senza tipo a quattro componenti a 32 bit che supporta 10 bit per ogni colore e 2 bit per alfa.
DXGI_FORMAT_R10G10B10A2_UNORM
Valore: 24
Formato a quattro componenti, senza segno a 32 bit non normalizzato-integer che supporta 10 bit per ogni colore e 2 bit per alfa.
DXGI_FORMAT_R10G10B10A2_UINT
Valore: 25
Formato intero a quattro componenti a 32 bit senza segno che supporta 10 bit per ogni colore e 2 bit per alfa.
DXGI_FORMAT_R11G11B10_FLOAT
Valore: 26
Tre numeri a virgola mobile a precisione parziale codificati in un singolo valore a 32 bit (una variante di s10e5, ovvero bit di segno, mantissa a 10 bit e esponente con pregiudizi a 5 bit).
Non ci sono bit di segno e c'è un esponente a 5 bit (15) per ogni canale, mantissa a 6 bit per R e G e una mantissa a 5 bit per B, come illustrato nella figura seguente. 5,7

Illustrazione dei bit nei tre numeri a virgola mobile a precisione parziale, che mostra che non sono presenti bit di segno.
DXGI_FORMAT_R8G8B8A8_TYPELESS
Valore: 27
Formato senza tipo a quattro componenti a 32 bit che supporta 8 bit per canale incluso alfa.
DXGI_FORMAT_R8G8B8A8_UNORM
Valore: 28
Formato a quattro componenti, senza segno a 32 bit senza segno-normalizzato-integer che supporta 8 bit per canale incluso alfa.
DXGI_FORMAT_R8G8B8A8_UNORM_SRGB
Valore: 29
Formato sRGB intero normalizzato a 32 bit a 32 bit che supporta 8 bit per canale incluso alfa.
DXGI_FORMAT_R8G8B8A8_UINT
Valore: 30
Formato intero a quattro componenti, senza segno a 32 bit che supporta 8 bit per canale incluso alfa.
DXGI_FORMAT_R8G8B8A8_SNORM
Valore: 31
Formato interi con segno a 32 bit con segno a 32 bit che supporta 8 bit per canale, incluso alfa.
DXGI_FORMAT_R8G8B8A8_SINT
Valore: 32
Formato integer con segno a 32 bit a quattro bit che supporta 8 bit per canale incluso alfa.
DXGI_FORMAT_R16G16_TYPELESS
Valore: 33
Formato senza tipo a due componenti a 32 bit che supporta 16 bit per il canale rosso e 16 bit per il canale verde.
DXGI_FORMAT_R16G16_FLOAT
Valore: 34
Formato a virgola mobile a 32 bit che supporta 16 bit per il canale rosso e 16 bit per il canale verde. 5,7
DXGI_FORMAT_R16G16_UNORM
Valore: 35
Formato a due componenti, senza segno a 32 bit con valori interi normalizzati che supportano 16 bit per i canali verdi e rossi.
DXGI_FORMAT_R16G16_UINT
Valore: 36
Formato intero senza segno a due componenti a 32 bit che supporta 16 bit per il canale rosso e 16 bit per il canale verde.
DXGI_FORMAT_R16G16_SNORM
Valore: 37
Formato interi con segno a 32 bit con segno a 32 bit che supporta 16 bit per il canale rosso e 16 bit per il canale verde.
DXGI_FORMAT_R16G16_SINT
Valore: 38
Formato intero con segno a due componenti a 32 bit che supporta 16 bit per il canale rosso e 16 bit per il canale verde.
DXGI_FORMAT_R32_TYPELESS
Valore: 39
Formato senza tipo a 32 bit a 32 bit che supporta 32 bit per il canale rosso.
DXGI_FORMAT_D32_FLOAT
Valore: 40
Formato a virgola mobile a 32 bit che supporta 32 bit per la profondità. 5,8
DXGI_FORMAT_R32_FLOAT
Valore: 41
Formato a virgola mobile a 32 bit che supporta 32 bit per il canale rosso. 5,8
DXGI_FORMAT_R32_UINT
Valore: 42
Formato intero senza segno a 32 bit che supporta 32 bit per il canale rosso.
DXGI_FORMAT_R32_SINT
Valore: 43
Formato intero con segno a 32 bit a 32 bit che supporta 32 bit per il canale rosso.
DXGI_FORMAT_R24G8_TYPELESS
Valore: 44
Formato senza tipo a due componenti a 32 bit che supporta 24 bit per il canale rosso e 8 bit per il canale verde.
DXGI_FORMAT_D24_UNORM_S8_UINT
Valore: 45
Formato di buffer z a 32 bit che supporta 24 bit per profondità e 8 bit per stencil.
DXGI_FORMAT_R24_UNORM_X8_TYPELESS
Valore: 46
Formato a 32 bit, che contiene un intero normalizzato senza segno a 24 bit, senza segno, con un numero intero senza tipo aggiuntivo a 8 bit. Questo formato ha un canale rosso a 24 bit e 8 bit inutilizzati.
DXGI_FORMAT_X24_TYPELESS_G8_UINT
Valore: 47
Formato a 32 bit che contiene un formato intero senza segno a 24 bit, a singolo componente, con un componente intero senza segno a 8 bit aggiuntivo. Questo formato ha 24 bit inutilizzati e 8 bit di canale verde.
DXGI_FORMAT_R8G8_TYPELESS
Valore: 48
Formato senza tipo a due componenti a 16 bit che supporta 8 bit per il canale rosso e 8 bit per il canale verde.
DXGI_FORMAT_R8G8_UNORM
Valore: 49
Formato intero senza segno a due componenti a 16 bit che supporta 8 bit per il canale rosso e 8 bit per il canale verde.
DXGI_FORMAT_R8G8_UINT
Valore: 50
Formato intero senza segno a due componenti a 16 bit che supporta 8 bit per il canale rosso e 8 bit per il canale verde.
DXGI_FORMAT_R8G8_SNORM
Valore: 51
Formato intero con segno a due componenti a 16 bit che supporta 8 bit per il canale rosso e 8 bit per il canale verde.
DXGI_FORMAT_R8G8_SINT
Valore: 52
Formato intero con segno a due componenti a 16 bit che supporta 8 bit per il canale rosso e 8 bit per il canale verde.
DXGI_FORMAT_R16_TYPELESS
Valore: 53
Un formato senza tipo a 16 bit a 16 bit che supporta 16 bit per il canale rosso.
DXGI_FORMAT_R16_FLOAT
Valore: 54
Formato a virgola mobile a 16 bit che supporta 16 bit per il canale rosso. 5,7
DXGI_FORMAT_D16_UNORM
Valore: 55
Formato intero normalizzato a 16 bit a 16 bit che supporta 16 bit per la profondità.
DXGI_FORMAT_R16_UNORM
Valore: 56
Formato intero senza segno a 16 bit che supporta 16 bit per il canale rosso.
DXGI_FORMAT_R16_UINT
Valore: 57
Formato intero senza segno a 16 bit che supporta 16 bit per il canale rosso.
DXGI_FORMAT_R16_SNORM
Valore: 58
Formato intero con segno a 16 bit con segno a 16 bit che supporta 16 bit per il canale rosso.
DXGI_FORMAT_R16_SINT
Valore: 59
Formato intero con segno a 16 bit a 16 bit che supporta 16 bit per il canale rosso.
DXGI_FORMAT_R8_TYPELESS
Valore: 60
Un formato senza tipo a 8 bit a 8 bit che supporta 8 bit per il canale rosso.
DXGI_FORMAT_R8_UNORM
Valore: 61
Formato intero normalizzato a 8 bit a 8 bit che supporta 8 bit per il canale rosso.
DXGI_FORMAT_R8_UINT
Valore: 62
Formato intero senza segno a 8 bit che supporta 8 bit per il canale rosso.
DXGI_FORMAT_R8_SNORM
Valore: 63
Formato intero con segno a 8 bit con segno a 8 bit che supporta 8 bit per il canale rosso.
DXGI_FORMAT_R8_SINT
Valore: 64
Formato intero con segno a 8 bit che supporta 8 bit per il canale rosso.
DXGI_FORMAT_A8_UNORM
Valore: 65
Formato intero normalizzato a 8 bit singolo per solo alfa.
DXGI_FORMAT_R1_UNORM
Valore: 66
Formato integer normalizzato a 1 bit a 1 bit che supporta 1 bit per il canale rosso. ².
DXGI_FORMAT_R9G9B9E5_SHAREDEXP
Valore: 67
Tre numeri a virgola mobile a precisione parziale codificati in un singolo valore a 32 bit che condividono tutti gli stessi esponenti a 5 bit (variante di s10e5, che è bit di segno, mantissa a 10 bit e con pregiudizi a 5 bit (15) esponenti.
Non c'è alcun segno e c'è un esponente a 5 bit condiviso (15) e un mantissa a 9 bit per ogni canale, come illustrato nella figura seguente. 6,7.

Illustrazione dei bit nei tre numeri a virgola mobile a precisione parziale, che mostra un esponente con pregiudizi a 5 bit condiviso e una mantissa a 9 bit in tutti i canali.
DXGI_FORMAT_R8G8_B8G8_UNORM
Valore: 68
Formato intero normalizzato a quattro componenti a 32 bit. Questo formato RGB compresso è analogo al formato UYVY. Ogni blocco a 32 bit descrive una coppia di pixel: (R8, G8, B8) e (R8, G8, B8) in cui vengono ripetuti i valori R8/B8 e i valori G8 sono univoci per ogni pixel. ³

La larghezza deve essere uniforme.
DXGI_FORMAT_G8R8_G8B8_UNORM
Valore: 69
Formato intero normalizzato a quattro componenti a 32 bit. Questo formato RGB compresso è analogo al formato YUY2. Ogni blocco a 32 bit descrive una coppia di pixel: (R8, G8, B8) e (R8, G8, B8) in cui vengono ripetuti i valori R8/B8 e i valori G8 sono univoci per ogni pixel. ³

La larghezza deve essere uniforme.
DXGI_FORMAT_BC1_TYPELESS
Valore: 70
Formato di compressione a blocchi senza tipo a quattro componenti. Per informazioni sui formati di compressione a blocchi, vedere Compressione del blocco trama in Direct3D 11.
DXGI_FORMAT_BC1_UNORM
Valore: 71
Formato di compressione a blocchi a quattro componenti. Per informazioni sui formati di compressione a blocchi, vedere Compressione del blocco trama in Direct3D 11.
DXGI_FORMAT_BC1_UNORM_SRGB
Valore: 72
Formato di compressione a blocchi a quattro componenti per i dati sRGB. Per informazioni sui formati di compressione a blocchi, vedere Compressione del blocco trama in Direct3D 11.
DXGI_FORMAT_BC2_TYPELESS
Valore: 73
Formato di compressione a blocchi senza tipo a quattro componenti. Per informazioni sui formati di compressione a blocchi, vedere Compressione del blocco trama in Direct3D 11.
DXGI_FORMAT_BC2_UNORM
Valore: 74
Formato di compressione a blocchi a quattro componenti. Per informazioni sui formati di compressione a blocchi, vedere Compressione del blocco trama in Direct3D 11.
DXGI_FORMAT_BC2_UNORM_SRGB
Valore: 75
Formato di compressione a blocchi a quattro componenti per i dati sRGB. Per informazioni sui formati di compressione a blocchi, vedere Compressione del blocco trama in Direct3D 11.
DXGI_FORMAT_BC3_TYPELESS
Valore: 76
Formato di compressione a blocchi senza tipo a quattro componenti. Per informazioni sui formati di compressione a blocchi, vedere Compressione del blocco trama in Direct3D 11.
DXGI_FORMAT_BC3_UNORM
Valore: 77
Formato di compressione a blocchi a quattro componenti. Per informazioni sui formati di compressione a blocchi, vedere Compressione del blocco trama in Direct3D 11.
DXGI_FORMAT_BC3_UNORM_SRGB
Valore: 78
Formato di compressione a blocchi a quattro componenti per i dati sRGB. Per informazioni sui formati di compressione a blocchi, vedere Compressione del blocco trama in Direct3D 11.
DXGI_FORMAT_BC4_TYPELESS
Valore: 79
Formato di compressione a blocchi senza tipo un componente. Per informazioni sui formati di compressione a blocchi, vedere Compressione del blocco trama in Direct3D 11.
DXGI_FORMAT_BC4_UNORM
Valore: 80
Formato di compressione a blocco a un componente. Per informazioni sui formati di compressione a blocchi, vedere Compressione del blocco trama in Direct3D 11.
DXGI_FORMAT_BC4_SNORM
Valore: 81
Formato di compressione a blocco a un componente. Per informazioni sui formati di compressione a blocchi, vedere Compressione del blocco trama in Direct3D 11.
DXGI_FORMAT_BC5_TYPELESS
Valore: 82
Formato di compressione a blocchi senza tipo a due componenti. Per informazioni sui formati di compressione a blocchi, vedere Compressione del blocco trama in Direct3D 11.
DXGI_FORMAT_BC5_UNORM
Valore: 83
Formato di compressione a blocchi a due componenti. Per informazioni sui formati di compressione a blocchi, vedere Compressione del blocco trama in Direct3D 11.
DXGI_FORMAT_BC5_SNORM
Valore: 84
Formato di compressione a blocchi a due componenti. Per informazioni sui formati di compressione a blocchi, vedere Compressione del blocco trama in Direct3D 11.
DXGI_FORMAT_B5G6R5_UNORM
Valore: 85
Formato a tre componenti, senza segno a 16 bit non normalizzato-intero che supporta 5 bit per blu, 6 bit per verde e 5 bit per rosso.

Direct3D 10 a Direct3D 11: Questo valore è definito per DXGI. Tuttavia, i dispositivi Direct3D 10, 10.1 o 11 non supportano questo formato.

Direct3D 11.1: Questo valore non è supportato fino a quando Windows 8.
DXGI_FORMAT_B5G5R5A1_UNORM
Valore: 86
Formato a quattro componenti, senza segno a 16 bit senza segno-integer normalizzato che supporta 5 bit per ogni canale di colore e alfa a 1 bit.

Direct3D 10 a Direct3D 11: Questo valore è definito per DXGI. Tuttavia, i dispositivi Direct3D 10, 10.1 o 11 non supportano questo formato.

Direct3D 11.1: Questo valore non è supportato fino a quando Windows 8.
DXGI_FORMAT_B8G8R8A8_UNORM
Valore: 87
Formato intero a quattro componenti, senza segno a 32 bit normalizzato che supporta 8 bit per ogni canale di colore e alfa a 8 bit.
DXGI_FORMAT_B8G8R8X8_UNORM
Valore: 88
Formato intero senza segno a 32 bit che supporta 8 bit per ogni canale di colore e 8 bit inutilizzati.
DXGI_FORMAT_R10G10B10_XR_BIAS_A2_UNORM
Valore: 89
Formato a virgola fissa a 32 bit a 2,8 bit che supporta 10 bit per ogni canale di colore e alfa a 2 bit.
DXGI_FORMAT_B8G8R8A8_TYPELESS
Valore: 90
Formato senza tipo a quattro componenti a 32 bit che supporta 8 bit per ogni canale, incluso alfa. ⁴
DXGI_FORMAT_B8G8R8A8_UNORM_SRGB
Valore: 91
Formato RGB standard normalizzato a 32 bit a quattro bit che supporta 8 bit per ogni canale, incluso alfa. ⁴
DXGI_FORMAT_B8G8R8X8_TYPELESS
Valore: 92
Formato senza tipo a quattro componenti a 32 bit che supporta 8 bit per ogni canale di colore e 8 bit non utilizzati. ⁴
DXGI_FORMAT_B8G8R8X8_UNORM_SRGB
Valore: 93
Formato RGB standard normalizzato a 32 bit a quattro bit che supporta 8 bit per ogni canale di colore e 8 bit non utilizzati. ⁴
DXGI_FORMAT_BC6H_TYPELESS
Valore: 94
Formato di compressione a blocchi senza tipi. ⁴ Per informazioni sui formati di compressione a blocchi, vedere Compressione del blocco trama in Direct3D 11.
DXGI_FORMAT_BC6H_UF16
Valore: 95
Formato di compressione a blocchi. ⁴ Per informazioni sui formati di compressione a blocchi, vedere Compressione del blocco trama in Direct3D 11.⁵
DXGI_FORMAT_BC6H_SF16
Valore: 96
Formato di compressione a blocchi. ⁴ Per informazioni sui formati di compressione a blocchi, vedere Compressione del blocco trama in Direct3D 11.⁵
DXGI_FORMAT_BC7_TYPELESS
Valore: 97
Formato di compressione a blocchi senza tipi. ⁴ Per informazioni sui formati di compressione a blocchi, vedere Compressione del blocco trama in Direct3D 11.
DXGI_FORMAT_BC7_UNORM
Valore: 98
Formato di compressione a blocchi. ⁴ Per informazioni sui formati di compressione a blocchi, vedere Compressione del blocco trama in Direct3D 11.
DXGI_FORMAT_BC7_UNORM_SRGB
Valore: 99
Formato di compressione a blocchi. ⁴ Per informazioni sui formati di compressione a blocchi, vedere Compressione del blocco trama in Direct3D 11.
DXGI_FORMAT_AYUV
Valore: 100
Formato di risorsa video YUV 4:4:4 più comune. I formati di visualizzazione validi per questo formato di risorse video sono DXGI_FORMAT_R8G8B8A8_UNORM e DXGI_FORMAT_R8G8B8A8_UINT. Per le UAV, un formato di visualizzazione valido aggiuntivo è DXGI_FORMAT_R32_UINT. Usando DXGI_FORMAT_R32_UINT per le UAV, è possibile leggere e scrivere anziché scrivere solo per DXGI_FORMAT_R8G8B8A8_UNORM e DXGI_FORMAT_R8G8B8A8_UINT. I tipi di visualizzazione supportati sono SRV, RTV e UAV. Una visualizzazione fornisce un mapping semplice dell'intera superficie. Il mapping al canale di visualizzazione è V-R8>,
U-G8>,
Y-B8>,
e A-A8>.

Per altre informazioni sui formati YUV per il rendering video, vedere Formati YUV a 8 bit consigliati per il rendering video.

Direct3D 11.1: Questo valore non è supportato fino a quando Windows 8.
DXGI_FORMAT_Y410
Valore: 101
Formato di risorse video YUV 4:4:4:4 a 10 bit per canale. I formati di visualizzazione validi per questo formato di risorse video sono DXGI_FORMAT_R10G10B10A2_UNORM e DXGI_FORMAT_R10G10B10A2_UINT. Per le UAV, un formato di visualizzazione valido aggiuntivo è DXGI_FORMAT_R32_UINT. Usando DXGI_FORMAT_R32_UINT per le UAV, è possibile leggere e scrivere anziché scrivere solo per DXGI_FORMAT_R10G10B10A2_UNORM e DXGI_FORMAT_R10G10B10A2_UINT. I tipi di visualizzazione supportati sono SRV e UAV. Una visualizzazione fornisce un mapping semplice dell'intera superficie. Il mapping al canale di visualizzazione è U-R10>,
Y-G10>,
V-B10>,
e A-A2>.

Per altre informazioni sui formati YUV per il rendering video, vedere Formati YUV a 8 bit consigliati per il rendering video.

Direct3D 11.1: Questo valore non è supportato fino a quando Windows 8.
DXGI_FORMAT_Y416
Valore: 102
Formato di risorse video YUV 4:4:4:4 a 16 bit per canale. I formati di visualizzazione validi per questo formato di risorse video sono DXGI_FORMAT_R16G16B16A16_UNORM e DXGI_FORMAT_R16G16B16A16_UINT. I tipi di visualizzazione supportati sono SRV e UAV. Una visualizzazione fornisce un mapping semplice dell'intera superficie. Il mapping al canale di visualizzazione è U-R16>,
Y-G16>,
V-B16>,
e A-A16>.

Per altre informazioni sui formati YUV per il rendering video, vedere Formati YUV a 8 bit consigliati per il rendering video.

Direct3D 11.1: Questo valore non è supportato fino a quando Windows 8.
DXGI_FORMAT_NV12
Valore: 103
Formato di risorsa video YUV 4:2:0 più comune. I formati di visualizzazione dati di luminanza validi per questo formato di risorse video sono DXGI_FORMAT_R8_UNORM e DXGI_FORMAT_R8_UINT. I formati di visualizzazione dati di dominanza della dominanza validi (larghezza e altezza sono ogni 1/2 della visualizzazione luminanza) per questo formato di risorse video sono DXGI_FORMAT_R8G8_UNORM e DXGI_FORMAT_R8G8_UINT. I tipi di visualizzazione supportati sono SRV, RTV e UAV. Per la visualizzazione dei dati di luminanza, il mapping al canale di visualizzazione è Y-R8>. Per la visualizzazione dei dati di dominanza, il mapping al canale di visualizzazione è U-R8> e
V-G8>.

Per altre informazioni sui formati YUV per il rendering video, vedi Formati YUV a 8 bit consigliati per il rendering video.

La larghezza e l'altezza devono essere pari. Risorse di staging e parametri initData direct3D 11 per questo formato usano (rowPitch * (altezza + (altezza / 2))) byte. I primi byte (SysMemPitch * height) sono il piano Y, i byte rimanenti (SysMemPitch * (altezza / 2)) sono il piano UV.

Un'app che usa i formati YUY 4:2:0 deve mappare il piano luma (Y) separatamente dai piani chroma (UV). Gli sviluppatori eseguono questa operazione chiamando ID3D12Device::CreateShaderResourceView due volte per la stessa trama e passando formati a 1 canale e 2 canali. Passando un formato a 1 canale compatibile con il piano Y esegue il mapping solo del piano Y. Passando un formato a 2 canali compatibile con i piani UV (insieme) esegue il mapping solo dei piani you e V come singola visualizzazione risorse.

Direct3D 11.1: Questo valore non è supportato fino a Windows 8.
DXGI_FORMAT_P010
Valore: 104
Formato di risorse video YUV 4:2:0 a 10 bit per piano canale. I formati di visualizzazione dati di luminanza validi per questo formato di risorse video sono DXGI_FORMAT_R16_UNORM e DXGI_FORMAT_R16_UINT. Il runtime non applica se i 6 bit più bassi sono 0 (dato che questo formato di risorsa video è un formato a 10 bit che usa 16 bit). Se necessario, il codice dello shader dell'applicazione dovrà applicarlo manualmente. Dal punto di vista del runtime, DXGI_FORMAT_P010 non è diverso da DXGI_FORMAT_P016. I formati di visualizzazione dati di dominanza della dominanza validi (la larghezza e l'altezza sono ogni 1/2 della visualizzazione luminanza) per questo formato di risorse video sono DXGI_FORMAT_R16G16_UNORM e DXGI_FORMAT_R16G16_UINT. Per gli UAV, è DXGI_FORMAT_R32_UINT un formato di visualizzazione dati di dominanza chrominance aggiuntivo valido. Usando DXGI_FORMAT_R32_UINT per gli UAV, è possibile leggere e scrivere anziché solo scrivere per DXGI_FORMAT_R16G16_UNORM e DXGI_FORMAT_R16G16_UINT. I tipi di visualizzazione supportati sono SRV, RTV e UAV. Per la visualizzazione dei dati di luminanza, il mapping al canale di visualizzazione è Y-R16>. Per la visualizzazione dei dati di dominanza, il mapping al canale di visualizzazione è U-R16> e
V-G16>.

Per altre informazioni sui formati YUV per il rendering video, vedi Formati YUV a 8 bit consigliati per il rendering video.

La larghezza e l'altezza devono essere pari. Risorse di staging e parametri initData direct3D 11 per questo formato usano (rowPitch * (altezza + (altezza / 2))) byte. I primi byte (SysMemPitch * height) sono il piano Y, i byte rimanenti (SysMemPitch * (altezza / 2)) sono il piano UV.

Un'app che usa i formati YUY 4:2:0 deve mappare il piano luma (Y) separatamente dai piani chroma (UV). Gli sviluppatori eseguono questa operazione chiamando ID3D12Device::CreateShaderResourceView due volte per la stessa trama e passando formati a 1 canale e 2 canali. Passando un formato a 1 canale compatibile con il piano Y esegue il mapping solo del piano Y. Passando un formato a 2 canali compatibile con i piani UV (insieme) esegue il mapping solo dei piani you e V come singola visualizzazione risorse.

Direct3D 11.1: Questo valore non è supportato fino a Windows 8.
DXGI_FORMAT_P016
Valore: 105
Formato di risorse video YUV 4:2:0 a 16 bit per piano canale. I formati di visualizzazione dati di luminanza validi per questo formato di risorse video sono DXGI_FORMAT_R16_UNORM e DXGI_FORMAT_R16_UINT. I formati di visualizzazione dati di dominanza della dominanza validi (la larghezza e l'altezza sono ogni 1/2 della visualizzazione luminanza) per questo formato di risorse video sono DXGI_FORMAT_R16G16_UNORM e DXGI_FORMAT_R16G16_UINT. Per gli UAV, è DXGI_FORMAT_R32_UINT un formato di visualizzazione dati di dominanza chrominance aggiuntivo valido. Usando DXGI_FORMAT_R32_UINT per gli UAV, è possibile leggere e scrivere anziché solo scrivere per DXGI_FORMAT_R16G16_UNORM e DXGI_FORMAT_R16G16_UINT. I tipi di visualizzazione supportati sono SRV, RTV e UAV. Per la visualizzazione dei dati di luminanza, il mapping al canale di visualizzazione è Y-R16>. Per la visualizzazione dei dati di dominanza, il mapping al canale di visualizzazione è U-R16> e
V-G16>.

Per altre informazioni sui formati YUV per il rendering video, vedi Formati YUV a 8 bit consigliati per il rendering video.

La larghezza e l'altezza devono essere pari. Risorse di staging e parametri initData direct3D 11 per questo formato usano (rowPitch * (altezza + (altezza / 2))) byte. I primi byte (SysMemPitch * height) sono il piano Y, i byte rimanenti (SysMemPitch * (altezza / 2)) sono il piano UV.

Un'app che usa i formati YUY 4:2:0 deve mappare il piano luma (Y) separatamente dai piani chroma (UV). Gli sviluppatori eseguono questa operazione chiamando ID3D12Device::CreateShaderResourceView due volte per la stessa trama e passando formati a 1 canale e 2 canali. Passando un formato a 1 canale compatibile con il piano Y esegue il mapping solo del piano Y. Passando un formato a 2 canali compatibile con i piani UV (insieme) esegue il mapping solo dei piani you e V come singola visualizzazione risorse.

Direct3D 11.1: Questo valore non è supportato fino a Windows 8.
DXGI_FORMAT_420_OPAQUE
Valore: 106
Formato di risorse video YUV 4:2:0 a 8 bit per piano canale. Questo formato è sottocampionato in cui ogni pixel ha un valore Y, ma ogni blocco di pixel 2x2 condivide un singolo valore utente e V. Il runtime richiede che la larghezza e l'altezza di tutte le risorse create con questo formato siano multiple di 2. Il runtime richiede inoltre che i membri sinistro, destro, superiore e inferiore di qualsiasi RECT usato per questo formato siano multipli di 2. Questo formato è diverso da DXGI_FORMAT_NV12 in quanto il layout dei dati all'interno della risorsa è completamente opaco alle applicazioni. Le applicazioni non possono usare la CPU per eseguire il mapping della risorsa e quindi accedere ai dati all'interno della risorsa. Non è possibile usare shader con questo formato. A causa di questo comportamento, è possibile usare hardware legacy che supporta un layout non NV12 4:2:0 (ad esempio, YV12 e così via). Inoltre, è possibile usare un nuovo hardware con un'implementazione 4:2:0 migliore di NV12 quando l'applicazione non richiede che i dati si trovano in un layout standard.

Per altre informazioni sui formati YUV per il rendering video, vedi Formati YUV a 8 bit consigliati per il rendering video.

La larghezza e l'altezza devono essere pari. Risorse di staging e parametri initData direct3D 11 per questo formato usano (rowPitch * (altezza + (altezza / 2))) byte.

Un'app che usa i formati YUY 4:2:0 deve mappare il piano luma (Y) separatamente dai piani chroma (UV). Gli sviluppatori eseguono questa operazione chiamando ID3D12Device::CreateShaderResourceView due volte per la stessa trama e passando formati a 1 canale e 2 canali. Passando un formato a 1 canale compatibile con il piano Y esegue il mapping solo del piano Y. Passando un formato a 2 canali compatibile con i piani UV (insieme) esegue il mapping solo dei piani you e V come singola visualizzazione risorse.

Direct3D 11.1: Questo valore non è supportato fino a Windows 8.
DXGI_FORMAT_YUY2
Valore: 107
Formato di risorsa video YUV 4:2:2 più comune. I formati di visualizzazione validi per questo formato di risorse video sono DXGI_FORMAT_R8G8B8A8_UNORM e DXGI_FORMAT_R8G8B8A8_UINT. Per gli UAV, viene DXGI_FORMAT_R32_UINT un formato di visualizzazione valido aggiuntivo. Usando DXGI_FORMAT_R32_UINT per gli UAV, è possibile leggere e scrivere anziché solo scrivere per DXGI_FORMAT_R8G8B8A8_UNORM e DXGI_FORMAT_R8G8B8A8_UINT. I tipi di visualizzazione supportati sono SRV e UAV. Una visualizzazione offre un semplice mapping dell'intera superficie. Il mapping al canale di visualizzazione è Y0-R8>,
U0-G8>,
Y1-B8>,
e V0-A8>.

Un formato di visualizzazione valido univoco per questo formato di risorsa video è DXGI_FORMAT_R8G8_B8G8_UNORM. Con questo formato di visualizzazione, la larghezza della visualizzazione sembra essere due volte quella che il DXGI_FORMAT_R8G8B8A8_UNORM o la visualizzazione DXGI_FORMAT_R8G8B8A8_UINT sarebbe quando l'hardware ricostruisce RGBA automaticamente in lettura e prima di filtrare. Questo comportamento hardware Direct3D è legacy e probabilmente non è più utile. Con questo formato di visualizzazione, il mapping al canale di visualizzazione è Y0-R8>,
U0->
G8[0],
Y1-B8>,
e V0->
G8[1].

Per altre informazioni sui formati YUV per il rendering video, vedi Formati YUV a 8 bit consigliati per il rendering video.

La larghezza deve essere pari.

Direct3D 11.1: Questo valore non è supportato fino a Windows 8.
DXGI_FORMAT_Y210
Valore: 108
Formato di risorsa video YUV 4:2:2 a 10 bit per canale. I formati di visualizzazione validi per questo formato di risorse video sono DXGI_FORMAT_R16G16B16A16_UNORM e DXGI_FORMAT_R16G16B16A16_UINT. Il runtime non applica se i 6 bit più bassi sono 0 (dato che questo formato di risorsa video è un formato a 10 bit che usa 16 bit). Se necessario, il codice dello shader dell'applicazione deve applicare manualmente questo codice. Dal punto di vista del runtime, DXGI_FORMAT_Y210 non è diverso da DXGI_FORMAT_Y216. I tipi di visualizzazione supportati sono SRV e UAV. Una visualizzazione fornisce un mapping semplice dell'intera superficie. Il mapping al canale di visualizzazione è Y0-R16>,
U-G16>,
Y1-B16>,
e V-A16>.

Per altre informazioni sui formati YUV per il rendering video, vedere Formati YUV a 8 bit consigliati per il rendering video.

La larghezza deve essere uniforme.

Direct3D 11.1: Questo valore non è supportato fino a quando Windows 8.
DXGI_FORMAT_Y216
Valore: 109
Formato di risorsa video YUV 4:2:2 a 16 bit per canale. I formati di visualizzazione validi per questo formato di risorse video sono DXGI_FORMAT_R16G16B16A16_UNORM e DXGI_FORMAT_R16G16B16A16_UINT. I tipi di visualizzazione supportati sono SRV e UAV. Una visualizzazione fornisce un mapping semplice dell'intera superficie. Il mapping al canale di visualizzazione è Y0-R16>,
U-G16>,
Y1-B16>,
e V-A16>.

Per altre informazioni sui formati YUV per il rendering video, vedere Formati YUV a 8 bit consigliati per il rendering video.

La larghezza deve essere uniforme.

Direct3D 11.1: Questo valore non è supportato fino a quando Windows 8.
DXGI_FORMAT_NV11
Valore: 110
Formato di risorsa video YUV più comune 4:1:1. I formati di visualizzazione dati di luminanza validi per questo formato di risorse video sono DXGI_FORMAT_R8_UNORM e DXGI_FORMAT_R8_UINT. I formati di visualizzazione dati di luminanza validi (la larghezza e l'altezza sono ogni 1/4 della visualizzazione di luminanza) per questo formato di risorse video sono DXGI_FORMAT_R8G8_UNORM e DXGI_FORMAT_R8G8_UINT. I tipi di visualizzazione supportati sono SRV, RTV e UAV. Per la visualizzazione dati di luminanza, il mapping al canale di visualizzazione è Y-R8>. Per la visualizzazione dei dati di dominanza, il mapping al canale di visualizzazione è U-R8> e
V-G8>.

Per altre informazioni sui formati YUV per il rendering video, vedere Formati YUV a 8 bit consigliati per il rendering video.

La larghezza deve essere un multiplo di 4. Risorse di staging direct3D11 e parametri initData per questo formato usano (rowPitch * altezza * 2) byte. Il primo (SysMemPitch * height) è il piano Y, il successivo (SysMemPitch /2) byte è il piano UV e il resto è riempimento.

Direct3D 11.1: Questo valore non è supportato fino a quando Windows 8.
DXGI_FORMAT_AI44
Valore: 111
Formato YUV a 4 bit comunemente usato per la sottopictura DVD.

Per altre informazioni sui formati YUV per il rendering video, vedere Formati YUV a 8 bit consigliati per il rendering video.

Direct3D 11.1: Questo valore non è supportato fino a quando Windows 8.
DXGI_FORMAT_IA44
Valore: 112
Formato YUV a 4 bit comunemente usato per la sottopictura DVD.

Per altre informazioni sui formati YUV per il rendering video, vedere Formati YUV a 8 bit consigliati per il rendering video.

Direct3D 11.1: Questo valore non è supportato fino a quando Windows 8.
DXGI_FORMAT_P8
Valore: 113
Formato palletizzato a 8 bit usato per i dati RGB con pallettizzazione quando il processore elabora i dati ISDB-T e per i dati YUV palletizzati quando il processore elabora i dati BluRay.

Per altre informazioni sui formati YUV per il rendering video, vedere Formati YUV a 8 bit consigliati per il rendering video.

Direct3D 11.1: Questo valore non è supportato fino a quando Windows 8.
DXGI_FORMAT_A8P8
Valore: 114
Formato palletizzato a 8 bit con 8 bit di alfa utilizzato per i dati YUV palletizzati quando il processore elabora i dati BluRay.

Per altre informazioni sui formati YUV per il rendering video, vedere Formati YUV a 8 bit consigliati per il rendering video.

Direct3D 11.1: Questo valore non è supportato fino a quando Windows 8.
DXGI_FORMAT_B4G4R4A4_UNORM
Valore: 115
Formato intero normalizzato a quattro componenti a 16 bit che supporta 4 bit per ogni canale, incluso alfa.

Direct3D 11.1: Questo valore non è supportato fino a quando Windows 8.
DXGI_FORMAT_P208
Valore: 130
Formato video; versione a 8 bit di un formato 4:2:2 ibrido.
DXGI_FORMAT_V208
Valore: 131
Formato di rendering a 8 bit YCbCrA 4:4.
DXGI_FORMAT_V408
Valore: 132
Formato di rendering A 8 bit YCbCrA 4:4:4:4.
DXGI_FORMAT_FORCE_UINT
Valore: 0xffffffff
Forza questa enumerazione per la compilazione in 32 bit di dimensioni. Senza questo valore, alcuni compilatori consentono la compilazione di questa enumerazione in un
dimensioni diverse da 32 bit. Questo valore non viene utilizzato.

Commenti

Ordine byte (LSB/MSB)

La maggior parte dei formati ha componenti allineati a byte e i componenti sono in ordine di matrice C (il minimo indirizzo viene prima). Per i formati che non dispongono di componenti allineati alla potenza 2, il primo componente denominato si trova nei bit meno significativi.

Codifica portabile per Endian-Independence

Anziché modificare se un sistema usa l'ordinamento di byte big-endian o little-endian, è consigliabile scrivere codice portatile, come indicato di seguito.

// 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

Restrizioni e note sui formati

Alcuni formati hanno restrizioni aggiuntive e comportamento implicito:
  1. Una risorsa dichiarata con la famiglia di formati DXGI_FORMAT_R32G32B32 non può essere usata simultaneamente per i dati dei vertici e della trama. Questo significa che non è possibile creare una risorsa buffer con la famiglia di formati DXGI_FORMAT_R32G32B32 che utilizza uno dei flag di associazione seguenti: D3D10_BIND_VERTEX_BUFFER, D3D10_BIND_INDEX_BUFFER, D3D10_BIND_CONSTANT_BUFFER o D3D10_BIND_STREAM_OUTPUT (vedere D3D10_BIND_FLAG).
  2. DXGI_FORMAT_R1_UNORM è progettato in modo specifico per il filtro del testo e deve essere usato con una modalità di filtro 8x8 specifica del formato. Quando si chiama una funzione di campionamento HLSL usando questo formato, il parametro offset dell'indirizzo deve essere impostato su (0,0).
  3. Una risorsa che usa un formato sub-campione (ad esempio DXGI_FORMAT_R8G8_B8G8) deve avere una dimensione che corrisponde a più di 2 nella dimensione x.
  4. Il formato non è disponibile in Direct3D 10 e Direct3D 10.1
  5. Questi formati float hanno un 1 implicito aggiunto alla loro mantissa. Se l'esponente non è 0, 1.0 viene aggiunto alla mantissa prima di applicare l'esponente.
  6. Questi formati float non hanno un 1 implicito aggiunto alla loro mantissa.
  7. Supporto denorm: i formati float a 9, 10, 11 e 16 bit supportano denorms.
  8. Nessun supporto per denorm: i formati float a 32 e 64 bit scaricano denorm su zero.
Gli argomenti seguenti forniscono elenchi dei formati supportati da specifici livelli di funzionalità hardware: Per un elenco dei tipi DirectXMath che vengono mappati ai valori DXGI_FORMAT , vedere Internals della libreria DirectXMath.

Modificatori di formato

Ogni valore di enumerazione contiene un modificatore di formato che descrive il tipo di dati.

Modificatori di formato Descrizione
_GALLEGGIANTE Valore a virgola mobile; I formati a virgola mobile a 32 bit usano ieee 754 a precisione singola (formato s23e8): segno di bit, esponente con distorsione a 8 bit (127) e mantissa a 23 bit. I formati a virgola mobile a 16 bit usano la precisione a metà (formato s10e5): bit di segno, esponente con distorsione a 5 bit (15) e mantissa a 10 bit.
_SINT Intero con segno a complemento di due. Ad esempio, un SINT a 3 bit rappresenta i valori -4, -3, -2, -1, 0, 1, 2, 3.
_SNORM Intero normalizzato con segno; interpretato in una risorsa come intero con segno e viene interpretato in uno shader come valore a virgola mobile normalizzata con segno nell'intervallo [-1, 1]. Per un numero di complemento di 2, il valore massimo è 1,0f (un valore a 5 bit 01111 corrisponde a 1,0f) e il valore minimo è -1,0f (un valore a 5 bit 10000 corrisponde a -1,0f). Inoltre, il secondo numero minimo corrisponde a -1,0f (un valore a 5 bit 10001 corrisponde a -1,0f). Le rappresentazioni integer risultanti sono valori a virgola mobile a virgola mobile uniforme nell'intervallo (-1,0f... 0,0f) e anche un set complementare di rappresentazioni per i numeri nell'intervallo (0,0f... 1,0f).
_SRGB I dati RGB standard, che visualizzano approssimativamente i colori in una rampa lineare di livelli di luminosità in modo che un osservatore medio, in condizioni di visualizzazione medie, possa visualizzarli in una visualizzazione media.

Tutte le 0 sono mappate a 0,0f e tutte le mappe di 1 a 1,0f. La sequenza di codifiche intere senza segno tra tutte le 0 e tutte le 1 rappresenta una progressione non lineare nell'interpretazione a virgola mobile dei numeri tra 0,0f e 1,0f. Per altri dettagli, vedere lo standard di colore SRGB, IEC 61996-2-1, presso IEC (International Electrotechnical Commission).

La conversione da o verso lo spazio sRGB viene eseguita automaticamente dalle funzioni di caricamento delle trame D3DX10 o D3DX9. Se un formato con _SRGB ha un canale A, il canale A viene archiviato nei dati Gamma 1.0f; I canali R, G e B nel formato vengono archiviati in dati sRGB Gamma (segmento lineare + potenza 2,4).
_TYPELESS Dati senza tipi, con un numero definito di bit. I formati senza tipi sono progettati per la creazione di risorse senza tipi; ovvero una risorsa la cui dimensione è nota, ma il cui tipo di dati non è ancora completamente definito. Quando una risorsa senza tipi è associata a uno shader, l'applicazione o lo shader deve risolvere il tipo di formato (che deve corrispondere al numero di bit per componente nel formato senza tipi).

Un formato senza tipi contiene uno o più formati secondari; ogni sottoformatto risolve il tipo di dati. Ad esempio, nel gruppo R32G32B32, che definisce i tipi per i dati a 96 bit a tre componenti, è presente un formato senza tipi e tre sottoformati completamente tipizzato.


DXGI_FORMAT_R32G32B32_TYPELESS,
DXGI_FORMAT_R32G32B32_FLOAT,
DXGI_FORMAT_R32G32B32_UINT,
DXGI_FORMAT_R32G32B32_SINT,

_UINT Intero senza segno. Ad esempio, un UINT a 3 bit rappresenta i valori 0, 1, 2, 3, 4, 5, 6, 7.
_UNORM Intero normalizzato senza segno; interpretato in una risorsa come intero senza segno e interpretato in uno shader come valore a virgola mobile normalizzata senza segno nell'intervallo [0, 1]. Tutte le 0 sono mappate a 0,0f e tutte le mappe di 1 a 1,0f. Viene rappresentata una sequenza di valori a virgola mobile a virgola mobile uniforme da 0,0f a 1,0f. Ad esempio, uno UNORM a 2 bit rappresenta 0,0f, 1/3, 2/3 e 1,0f.
_SHAREDEXP Esponente condiviso. Tutte le rappresentazioni a virgola mobile nel formato condividono l'esponente.
 

Nuovi formati di risorsa

Direct3D 10 offre nuovi formati di compressione dei dati per la compressione dei dati di illuminazione HDR (High Dynamic Range), mappe normali e campi di altezza a una frazione delle dimensioni originali. Questi tipi di compressione includono:
  • Shared-Exponent formato HDR (High Dynamic Range) (RGBE)
  • Nuovi formati UNORM/SNORM per canale 1-2 nuovi Block-Compressed
I formati di compressione a blocchi possono essere usati per qualsiasi tipo di trama 2D o 3D ( Texture2D, Texture2DArray, Texture3D o TextureCube) incluse le superfici mipmap. Le tecniche di compressione dei blocchi richiedono che le dimensioni della trama siano un multiplo di 4 (poiché l'implementazione comprime su blocchi di texel 4x4). Nel campionatore di trama i formati compressi vengono sempre decompressi prima del filtro delle trame.

Requisiti

   
Intestazione dxgiformat.h

Vedi anche

Enumerazioni DXGI