DXGI_FORMAT enumeração (dxgiformat.h)
Formatos de dados de recurso, incluindo formatos totalmente tipado e sem tipo. Uma lista de modificadores na parte inferior da página descreve mais completamente cada tipo de formato.
Sintaxe
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
} ;
Constantes
DXGI_FORMAT_UNKNOWN Valor: 0 O formato não é conhecido. |
DXGI_FORMAT_R32G32B32A32_TYPELESS Valor: 1 Um formato sem tipo de quatro componentes de 128 bits que dá suporte a 32 bits por canal, incluindo alfa. ¹ |
DXGI_FORMAT_R32G32B32A32_FLOAT Valor: 2 Um formato de ponto flutuante de 128 bits de quatro componentes que dá suporte a 32 bits por canal, incluindo alfa. 1,5,8 |
DXGI_FORMAT_R32G32B32A32_UINT Valor: 3 Um formato de inteiro sem sinal de 128 bits de quatro componentes que dá suporte a 32 bits por canal, incluindo alfa. ¹ |
DXGI_FORMAT_R32G32B32A32_SINT Valor: 4 Um formato de inteiro com sinal de 128 bits de quatro componentes que dá suporte a 32 bits por canal, incluindo alfa. ¹ |
DXGI_FORMAT_R32G32B32_TYPELESS Valor: 5 Um formato sem tipo de três componentes de 96 bits que dá suporte a 32 bits por canal de cores. |
DXGI_FORMAT_R32G32B32_FLOAT Valor: 6 Um formato de ponto flutuante de três componentes de 96 bits que dá suporte a 32 bits por canal de cor. 5,8 |
DXGI_FORMAT_R32G32B32_UINT Valor: 7 Um formato de inteiro sem sinal de 96 bits de três componentes que dá suporte a 32 bits por canal de cor. |
DXGI_FORMAT_R32G32B32_SINT Valor: 8 Um formato de inteiro com sinal de 96 bits de três componentes que dá suporte a 32 bits por canal de cor. |
DXGI_FORMAT_R16G16B16A16_TYPELESS Valor: 9 Um formato sem tipo de quatro componentes e 64 bits que dá suporte a 16 bits por canal, incluindo alfa. |
DXGI_FORMAT_R16G16B16A16_FLOAT Valor: 10 Um formato de ponto flutuante de quatro componentes de 64 bits que dá suporte a 16 bits por canal, incluindo alfa. 5,7 |
DXGI_FORMAT_R16G16B16A16_UNORM Valor: 11 Um formato inteiro sem sinal normalizado de quatro componentes de 64 bits que dá suporte a 16 bits por canal, incluindo alfa. |
DXGI_FORMAT_R16G16B16A16_UINT Valor: 12 Um formato de inteiro sem sinal de quatro componentes de 64 bits que dá suporte a 16 bits por canal, incluindo alfa. |
DXGI_FORMAT_R16G16B16A16_SNORM Valor: 13 Um formato de inteiro normalizado com sinal de 64 bits de quatro componentes que dá suporte a 16 bits por canal, incluindo alfa. |
DXGI_FORMAT_R16G16B16A16_SINT Valor: 14 Um formato de inteiro com sinal de 64 bits de quatro componentes que dá suporte a 16 bits por canal, incluindo alfa. |
DXGI_FORMAT_R32G32_TYPELESS Valor: 15 Um formato sem tipo de dois componentes de 64 bits que dá suporte a 32 bits para o canal vermelho e 32 bits para o canal verde. |
DXGI_FORMAT_R32G32_FLOAT Valor: 16 Um formato de ponto flutuante de 64 bits de dois componentes que dá suporte a 32 bits para o canal vermelho e 32 bits para o canal verde. 5,8 |
DXGI_FORMAT_R32G32_UINT Valor: 17 Um formato de inteiro sem sinal de dois componentes de 64 bits que dá suporte a 32 bits para o canal vermelho e 32 bits para o canal verde. |
DXGI_FORMAT_R32G32_SINT Valor: 18 Um formato de inteiro com sinal de 64 bits de dois componentes que dá suporte a 32 bits para o canal vermelho e 32 bits para o canal verde. |
DXGI_FORMAT_R32G8X24_TYPELESS Valor: 19 Um formato sem tipo de dois componentes de 64 bits que dá suporte a 32 bits para o canal vermelho, 8 bits para o canal verde e 24 bits não são usados. |
DXGI_FORMAT_D32_FLOAT_S8X24_UINT Valor: 20 Um componente de ponto flutuante de 32 bits e dois componentes inteiros sem sinal (com 32 bits adicionais). Esse formato dá suporte a profundidade de 32 bits, estêncil de 8 bits e 24 bits não utilizados.⁵ |
DXGI_FORMAT_R32_FLOAT_X8X24_TYPELESS Valor: 21 Um componente de ponto flutuante de 32 bits e dois componentes sem tipo (com 32 bits adicionais). Esse formato dá suporte ao canal vermelho de 32 bits, 8 bits não são utilizados e 24 bits não são utilizados.⁵ |
DXGI_FORMAT_X32_TYPELESS_G8X24_UINT Valor: 22 Um componente sem tipo de 32 bits e dois componentes inteiros sem sinal (com 32 bits adicionais). Esse formato tem 32 bits não utilizados, 8 bits para o canal verde e 24 bits não são usados. |
DXGI_FORMAT_R10G10B10A2_TYPELESS Valor: 23 Um formato sem tipo de quatro componentes e 32 bits que dá suporte a 10 bits para cada cor e 2 bits para alfa. |
DXGI_FORMAT_R10G10B10A2_UNORM Valor: 24 Um formato inteiro sem sinal normalizado de quatro componentes de 32 bits que dá suporte a 10 bits para cada cor e 2 bits para alfa. |
DXGI_FORMAT_R10G10B10A2_UINT Valor: 25 Um formato de inteiro sem sinal de 32 bits de quatro componentes que dá suporte a 10 bits para cada cor e 2 bits para alfa. |
DXGI_FORMAT_R11G11B10_FLOAT Valor: 26 Três números de ponto flutuante de precisão parcial codificados em um único valor de 32 bits (uma variante de s10e5, que é bit de sinal, mantissa de 10 bits e expoente tendencioso de 5 bits (15). Não há bits de sinal e há um expoente de 5 bits tendencioso (15) para cada canal, mantissa de 6 bits para R e G e uma mantissa de 5 bits para B, conforme mostrado na ilustração a seguir. 5,7 |
DXGI_FORMAT_R8G8B8A8_TYPELESS Valor: 27 Um formato sem tipo de quatro componentes e 32 bits que dá suporte a 8 bits por canal, incluindo alfa. |
DXGI_FORMAT_R8G8B8A8_UNORM Valor: 28 Um formato inteiro sem sinal normalizado de 32 bits de quatro componentes que dá suporte a 8 bits por canal, incluindo alfa. |
DXGI_FORMAT_R8G8B8A8_UNORM_SRGB Valor: 29 Um formato sRGB inteiro sem sinal de 32 bits de quatro componentes que dá suporte a 8 bits por canal, incluindo alfa. |
DXGI_FORMAT_R8G8B8A8_UINT Valor: 30 Um formato de inteiro sem sinal de 32 bits de quatro componentes que dá suporte a 8 bits por canal, incluindo alfa. |
DXGI_FORMAT_R8G8B8A8_SNORM Valor: 31 Um formato inteiro com sinal de 32 bits de quatro componentes que dá suporte a 8 bits por canal, incluindo alfa. |
DXGI_FORMAT_R8G8B8A8_SINT Valor: 32 Um formato de inteiro com sinal de 32 bits de quatro componentes que dá suporte a 8 bits por canal, incluindo alfa. |
DXGI_FORMAT_R16G16_TYPELESS Valor: 33 Um formato sem tipo de dois componentes de 32 bits que dá suporte a 16 bits para o canal vermelho e 16 bits para o canal verde. |
DXGI_FORMAT_R16G16_FLOAT Valor: 34 Um formato de ponto flutuante de 32 bits de dois componentes que dá suporte a 16 bits para o canal vermelho e 16 bits para o canal verde. 5,7 |
DXGI_FORMAT_R16G16_UNORM Valor: 35 Um formato inteiro sem sinal normalizado de 32 bits de dois componentes que dá suporte a 16 bits cada para os canais verde e vermelho. |
DXGI_FORMAT_R16G16_UINT Valor: 36 Um formato de inteiro sem sinal de 32 bits de dois componentes que dá suporte a 16 bits para o canal vermelho e 16 bits para o canal verde. |
DXGI_FORMAT_R16G16_SNORM Valor: 37 Um formato inteiro com sinal de 32 bits de dois componentes que dá suporte a 16 bits para o canal vermelho e 16 bits para o canal verde. |
DXGI_FORMAT_R16G16_SINT Valor: 38 Um formato de inteiro com sinal de 32 bits de dois componentes que dá suporte a 16 bits para o canal vermelho e 16 bits para o canal verde. |
DXGI_FORMAT_R32_TYPELESS Valor: 39 Um formato sem tipo de componente único de 32 bits que dá suporte a 32 bits para o canal vermelho. |
DXGI_FORMAT_D32_FLOAT Valor: 40 Um formato de ponto flutuante de 32 bits de componente único que dá suporte a 32 bits para profundidade. 5,8 |
DXGI_FORMAT_R32_FLOAT Valor: 41 Um formato de ponto flutuante de 32 bits de componente único que dá suporte a 32 bits para o canal vermelho. 5,8 |
DXGI_FORMAT_R32_UINT Valor: 42 Um formato de inteiro sem sinal de 32 bits de componente único que dá suporte a 32 bits para o canal vermelho. |
DXGI_FORMAT_R32_SINT Valor: 43 Um formato de inteiro com sinal de 32 bits de componente único que dá suporte a 32 bits para o canal vermelho. |
DXGI_FORMAT_R24G8_TYPELESS Valor: 44 Um formato sem tipo de dois componentes de 32 bits que dá suporte a 24 bits para o canal vermelho e 8 bits para o canal verde. |
DXGI_FORMAT_D24_UNORM_S8_UINT Valor: 45 Um formato z-buffer de 32 bits que dá suporte a 24 bits para profundidade e 8 bits para estêncil. |
DXGI_FORMAT_R24_UNORM_X8_TYPELESS Valor: 46 Um formato de 32 bits, que contém um inteiro de 24 bits, de componente único, normalizado sem sinal, com 8 bits adicionais sem tipo. Esse formato tem canal vermelho de 24 bits e 8 bits não utilizados. |
DXGI_FORMAT_X24_TYPELESS_G8_UINT Valor: 47 Um formato de 32 bits, que contém um formato sem tipo de componente único de 24 bits, com um componente inteiro sem sinal de 8 bits adicional. Esse formato tem 24 bits não utilizados e um canal verde de 8 bits. |
DXGI_FORMAT_R8G8_TYPELESS Valor: 48 Um formato sem tipo de dois componentes de 16 bits que dá suporte a 8 bits para o canal vermelho e 8 bits para o canal verde. |
DXGI_FORMAT_R8G8_UNORM Valor: 49 Um formato inteiro sem sinal normalizado de dois componentes de 16 bits que dá suporte a 8 bits para o canal vermelho e 8 bits para o canal verde. |
DXGI_FORMAT_R8G8_UINT Valor: 50 Um formato de inteiro sem sinal de dois componentes de 16 bits que dá suporte a 8 bits para o canal vermelho e 8 bits para o canal verde. |
DXGI_FORMAT_R8G8_SNORM Valor: 51 Um formato inteiro com sinal normalizado de dois componentes de 16 bits que dá suporte a 8 bits para o canal vermelho e 8 bits para o canal verde. |
DXGI_FORMAT_R8G8_SINT Valor: 52 Um formato de inteiro com sinal de dois componentes de 16 bits que dá suporte a 8 bits para o canal vermelho e 8 bits para o canal verde. |
DXGI_FORMAT_R16_TYPELESS Valor: 53 Um formato sem tipo de componente único de 16 bits que dá suporte a 16 bits para o canal vermelho. |
DXGI_FORMAT_R16_FLOAT Valor: 54 Um formato de ponto flutuante de 16 bits de componente único que dá suporte a 16 bits para o canal vermelho. 5,7 |
DXGI_FORMAT_D16_UNORM Valor: 55 Um formato inteiro sem sinal de 16 bits de componente único que dá suporte a 16 bits para profundidade. |
DXGI_FORMAT_R16_UNORM Valor: 56 Um formato inteiro sem sinal de 16 bits de componente único que dá suporte a 16 bits para o canal vermelho. |
DXGI_FORMAT_R16_UINT Valor: 57 Um formato de inteiro sem sinal de 16 bits de componente único que dá suporte a 16 bits para o canal vermelho. |
DXGI_FORMAT_R16_SNORM Valor: 58 Um formato inteiro normalizado com sinal de 16 bits de componente único que dá suporte a 16 bits para o canal vermelho. |
DXGI_FORMAT_R16_SINT Valor: 59 Um formato de inteiro com sinal de 16 bits de componente único que dá suporte a 16 bits para o canal vermelho. |
DXGI_FORMAT_R8_TYPELESS Valor: 60 Um formato sem tipo de componente único de 8 bits que dá suporte a 8 bits para o canal vermelho. |
DXGI_FORMAT_R8_UNORM Valor: 61 Um formato inteiro sem sinal de 8 bits de componente único que dá suporte a 8 bits para o canal vermelho. |
DXGI_FORMAT_R8_UINT Valor: 62 Um formato de inteiro sem sinal de 8 bits de componente único que dá suporte a 8 bits para o canal vermelho. |
DXGI_FORMAT_R8_SNORM Valor: 63 Um formato inteiro normalizado com sinal de 8 bits de componente único que dá suporte a 8 bits para o canal vermelho. |
DXGI_FORMAT_R8_SINT Valor: 64 Um formato de inteiro com sinal de 8 bits de componente único que dá suporte a 8 bits para o canal vermelho. |
DXGI_FORMAT_A8_UNORM Valor: 65 Um formato inteiro sem sinal de 8 bits de componente único para somente alfa. |
DXGI_FORMAT_R1_UNORM Valor: 66 Um formato inteiro sem sinal de componente único de 1 bit que dá suporte a 1 bit para o canal vermelho. ². |
DXGI_FORMAT_R9G9B9E5_SHAREDEXP Valor: 67 Três números de ponto flutuante de precisão parcial codificados em um único valor de 32 bits, todos compartilhando o mesmo expoente de 5 bits (variante de s10e5, que é bit de sinal, mantissa de 10 bits e expoente tendencioso de 5 bits (15). Não há nenhum bit de sinal e há um expoente compartilhado com viés de 5 bits (15) e uma mantissa de 9 bits para cada canal, conforme mostrado na ilustração a seguir. 6,7. |
DXGI_FORMAT_R8G8_B8G8_UNORM Valor: 68 Um formato inteiro de 32 bits sem sinal normalizado de quatro componentes. Esse formato RGB empacotado é análogo ao formato UYVY. Cada bloco de 32 bits descreve um par de pixels: (R8, G8, B8) e (R8, G8, B8) em que os valores R8/B8 são repetidos e os valores G8 são exclusivos para cada pixel. ³ A largura deve ser uniforme. |
DXGI_FORMAT_G8R8_G8B8_UNORM Valor: 69 Um formato inteiro de 32 bits sem sinal normalizado de quatro componentes. Esse formato RGB empacotado é análogo ao formato YUY2. Cada bloco de 32 bits descreve um par de pixels: (R8, G8, B8) e (R8, G8, B8) em que os valores R8/B8 são repetidos e os valores G8 são exclusivos para cada pixel. ³ A largura deve ser uniforme. |
DXGI_FORMAT_BC1_TYPELESS Valor: 70 Formato de compactação de bloco sem tipo de quatro componentes. Para obter informações sobre formatos de compactação de blocos, consulte Compactação de bloco de textura no Direct3D 11. |
DXGI_FORMAT_BC1_UNORM Valor: 71 Formato de compactação de bloco de quatro componentes. Para obter informações sobre formatos de compactação de blocos, consulte Compactação de bloco de textura no Direct3D 11. |
DXGI_FORMAT_BC1_UNORM_SRGB Valor: 72 Formato de compactação de bloco de quatro componentes para dados sRGB. Para obter informações sobre formatos de compactação de blocos, consulte Compactação de bloco de textura no Direct3D 11. |
DXGI_FORMAT_BC2_TYPELESS Valor: 73 Formato de compactação de bloco sem tipo de quatro componentes. Para obter informações sobre formatos de compactação de blocos, consulte Compactação de bloco de textura no Direct3D 11. |
DXGI_FORMAT_BC2_UNORM Valor: 74 Formato de compactação de bloco de quatro componentes. Para obter informações sobre formatos de compactação de blocos, consulte Compactação de bloco de textura no Direct3D 11. |
DXGI_FORMAT_BC2_UNORM_SRGB Valor: 75 Formato de compactação de bloco de quatro componentes para dados sRGB. Para obter informações sobre formatos de compactação de blocos, consulte Compactação de bloco de textura no Direct3D 11. |
DXGI_FORMAT_BC3_TYPELESS Valor: 76 Formato de compactação de bloco sem tipo de quatro componentes. Para obter informações sobre formatos de compactação de blocos, consulte Compactação de bloco de textura no Direct3D 11. |
DXGI_FORMAT_BC3_UNORM Valor: 77 Formato de compactação de bloco de quatro componentes. Para obter informações sobre formatos de compactação de blocos, consulte Compactação de bloco de textura no Direct3D 11. |
DXGI_FORMAT_BC3_UNORM_SRGB Valor: 78 Formato de compactação de bloco de quatro componentes para dados sRGB. Para obter informações sobre formatos de compactação de blocos, consulte Compactação de bloco de textura no Direct3D 11. |
DXGI_FORMAT_BC4_TYPELESS Valor: 79 Formato de compactação de bloco sem tipo de um componente. Para obter informações sobre formatos de compactação de bloco, consulte Compactação de bloco de textura no Direct3D 11. |
DXGI_FORMAT_BC4_UNORM Valor: 80 Formato de compactação de bloco de um componente. Para obter informações sobre formatos de compactação de bloco, consulte Compactação de bloco de textura no Direct3D 11. |
DXGI_FORMAT_BC4_SNORM Valor: 81 Formato de compactação de bloco de um componente. Para obter informações sobre formatos de compactação de bloco, consulte Compactação de bloco de textura no Direct3D 11. |
DXGI_FORMAT_BC5_TYPELESS Valor: 82 Formato de compactação de bloco sem tipo de dois componentes. Para obter informações sobre formatos de compactação de bloco, consulte Compactação de bloco de textura no Direct3D 11. |
DXGI_FORMAT_BC5_UNORM Valor: 83 Formato de compactação de bloco de dois componentes. Para obter informações sobre formatos de compactação de bloco, consulte Compactação de bloco de textura no Direct3D 11. |
DXGI_FORMAT_BC5_SNORM Valor: 84 Formato de compactação de bloco de dois componentes. Para obter informações sobre formatos de compactação de bloco, consulte Compactação de bloco de textura no Direct3D 11. |
DXGI_FORMAT_B5G6R5_UNORM Valor: 85 Um formato inteiro sem sinal normalizado de três componentes, de 16 bits, que dá suporte a 5 bits para azul, 6 bits para verde e 5 bits para vermelho. Direct3D 10 a Direct3D 11: Esse valor é definido para DXGI. No entanto, os dispositivos Direct3D 10, 10.1 ou 11 não dão suporte a esse formato. Direct3D 11.1: Esse valor não tem suporte até Windows 8. |
DXGI_FORMAT_B5G5R5A1_UNORM Valor: 86 Um formato inteiro sem sinal normalizado de quatro componentes de 16 bits que dá suporte a 5 bits para cada canal de cor e alfa de 1 bit. Direct3D 10 a Direct3D 11: Esse valor é definido para DXGI. No entanto, os dispositivos Direct3D 10, 10.1 ou 11 não dão suporte a esse formato. Direct3D 11.1: Esse valor não tem suporte até Windows 8. |
DXGI_FORMAT_B8G8R8A8_UNORM Valor: 87 Um formato inteiro sem sinal normalizado de quatro componentes de 32 bits que dá suporte a 8 bits para cada canal de cor e alfa de 8 bits. |
DXGI_FORMAT_B8G8R8X8_UNORM Valor: 88 Um formato inteiro sem sinal normalizado de quatro componentes de 32 bits que dá suporte a 8 bits para cada canal de cores e 8 bits não utilizados. |
DXGI_FORMAT_R10G10B10_XR_BIAS_A2_UNORM Valor: 89 Um formato de ponto fixo com viés de 2,8 bits de quatro componentes que dá suporte a 10 bits para cada canal de cor e alfa de 2 bits. |
DXGI_FORMAT_B8G8R8A8_TYPELESS Valor: 90 Um formato sem tipo de quatro componentes e 32 bits que dá suporte a 8 bits para cada canal, incluindo alfa. ⁴ |
DXGI_FORMAT_B8G8R8A8_UNORM_SRGB Valor: 91 Um formato RGB padrão de 32 bits sem sinal de quatro componentes que dá suporte a 8 bits para cada canal, incluindo alfa. ⁴ |
DXGI_FORMAT_B8G8R8X8_TYPELESS Valor: 92 Um formato sem tipo de quatro componentes e 32 bits que dá suporte a 8 bits para cada canal de cor e 8 bits não são usados. ⁴ |
DXGI_FORMAT_B8G8R8X8_UNORM_SRGB Valor: 93 Um formato RGB padrão de 32 bits sem sinal de quatro componentes que dá suporte a 8 bits para cada canal de cores e 8 bits não são usados. ⁴ |
DXGI_FORMAT_BC6H_TYPELESS Valor: 94 Um formato de compactação de bloco sem tipo. ⁴ Para obter informações sobre formatos de compactação de bloco, consulte Compactação de bloco de textura no Direct3D 11. |
DXGI_FORMAT_BC6H_UF16 Valor: 95 Um formato de compactação de bloco. ⁴ Para obter informações sobre formatos de compactação de bloco, consulte Compactação de bloco de textura no Direct3D 11.⁵ |
DXGI_FORMAT_BC6H_SF16 Valor: 96 Um formato de compactação de bloco. ⁴ Para obter informações sobre formatos de compactação de bloco, consulte Compactação de bloco de textura no Direct3D 11.⁵ |
DXGI_FORMAT_BC7_TYPELESS Valor: 97 Um formato de compactação de bloco sem tipo. ⁴ Para obter informações sobre formatos de compactação de bloco, consulte Compactação de bloco de textura no Direct3D 11. |
DXGI_FORMAT_BC7_UNORM Valor: 98 Um formato de compactação de bloco. ⁴ Para obter informações sobre formatos de compactação de bloco, consulte Compactação de bloco de textura no Direct3D 11. |
DXGI_FORMAT_BC7_UNORM_SRGB Valor: 99 Um formato de compactação de bloco. ⁴ Para obter informações sobre formatos de compactação de bloco, consulte Compactação de bloco de textura no Direct3D 11. |
DXGI_FORMAT_AYUV Valor: 100 Formato de recurso de vídeo YUV 4:4:4 mais comum. Os formatos de exibição válidos para este formato de recurso de vídeo são DXGI_FORMAT_R8G8B8A8_UNORM e DXGI_FORMAT_R8G8B8A8_UINT. Para UAVs, um formato de exibição válido adicional é DXGI_FORMAT_R32_UINT. Usando DXGI_FORMAT_R32_UINT para UAVs, você pode ler e gravar em vez de apenas gravar para DXGI_FORMAT_R8G8B8A8_UNORM e DXGI_FORMAT_R8G8B8A8_UINT. Os tipos de exibição com suporte são SRV, RTV e UAV. Uma exibição fornece um mapeamento simples de toda a superfície. O mapeamento para o canal de exibição é V-R8>, U-G8>, Y-B8>, e A-A8>. Para obter mais informações sobre formatos YUV para renderização de vídeo, consulte Formatos YUV recomendados de 8 bits para renderização de vídeo. Direct3D 11.1: Esse valor não tem suporte até Windows 8. |
DXGI_FORMAT_Y410 Valor: 101 Formato de recurso de vídeo YUV de 10 bits por canal 4:4:4. Os formatos de exibição válidos para este formato de recurso de vídeo são DXGI_FORMAT_R10G10B10A2_UNORM e DXGI_FORMAT_R10G10B10A2_UINT. Para UAVs, um formato de exibição válido adicional é DXGI_FORMAT_R32_UINT. Usando DXGI_FORMAT_R32_UINT para UAVs, você pode ler e gravar em vez de apenas gravar para DXGI_FORMAT_R10G10B10A2_UNORM e DXGI_FORMAT_R10G10B10A2_UINT. Os tipos de exibição com suporte são SRV e UAV. Uma exibição fornece um mapeamento simples de toda a superfície. O mapeamento para o canal de exibição é U-R10>, Y-G10>, V-B10>, e A-A2>. Para obter mais informações sobre formatos YUV para renderização de vídeo, consulte Formatos YUV recomendados de 8 bits para renderização de vídeo. Direct3D 11.1: Esse valor não tem suporte até Windows 8. |
DXGI_FORMAT_Y416 Valor: 102 Formato de recurso de vídeo YUV de 16 bits por canal 4:4:4. Os formatos de exibição válidos para este formato de recurso de vídeo são DXGI_FORMAT_R16G16B16A16_UNORM e DXGI_FORMAT_R16G16B16A16_UINT. Os tipos de exibição com suporte são SRV e UAV. Uma exibição fornece um mapeamento simples de toda a superfície. O mapeamento para o canal de exibição é U-R16>, Y-G16>, V-B16>, e A-A16>. Para obter mais informações sobre formatos YUV para renderização de vídeo, consulte Formatos YUV recomendados de 8 bits para renderização de vídeo. Direct3D 11.1: Esse valor não tem suporte até Windows 8. |
DXGI_FORMAT_NV12 Valor: 103 Formato de recurso de vídeo YUV 4:2:0 mais comum. Os formatos de exibição de dados de luminância válidos para esse formato de recurso de vídeo são DXGI_FORMAT_R8_UNORM e DXGI_FORMAT_R8_UINT. Os formatos válidos de exibição de dados chrominance (largura e altura são cada 1/2 do modo de exibição de luminância) para esse formato de recurso de vídeo são DXGI_FORMAT_R8G8_UNORM e DXGI_FORMAT_R8G8_UINT. Os tipos de exibição com suporte são SRV, RTV e UAV. Para a exibição de dados de luminância, o mapeamento para o canal de exibição é Y-R8>. Para exibição de dados chrominance, o mapeamento para o canal de exibição é U-R8> e V-G8>. Para obter mais informações sobre formatos YUV para renderização de vídeo, consulte Formatos YUV recomendados de 8 bits para renderização de vídeo. Largura e altura devem ser uniformes. Recursos de preparo do Direct3D 11 e parâmetros initData para esse formato usam (rowPitch * (altura + (altura /2))) bytes. Os primeiros bytes (SysMemPitch * height) são o plano Y, os bytes restantes (SysMemPitch * (altura /2)) são o plano UV. Um aplicativo que usa os formatos YUY 4:2:0 deve mapear o plano luma (Y) separadamente dos planos chroma (UV). Os desenvolvedores fazem isso chamando ID3D12Device::CreateShaderResourceView duas vezes para a mesma textura e passando formatos de 1 canal e 2 canais. Passar um formato de 1 canal compatível com o plano Y mapeia apenas o plano Y. Passar um formato de dois canais compatível com os planos UV (juntos) mapeia apenas os planos você e V como uma única exibição de recurso. Direct3D 11.1: Esse valor não tem suporte até Windows 8. |
DXGI_FORMAT_P010 Valor: 104 Formato de recurso de vídeo YUV de 10 bits por canal 4:2:0. Os formatos de exibição de dados de luminância válidos para esse formato de recurso de vídeo são DXGI_FORMAT_R16_UNORM e DXGI_FORMAT_R16_UINT. O runtime não impõe se os 6 bits mais baixos são 0 (considerando que esse formato de recurso de vídeo é um formato de 10 bits que usa 16 bits). Se necessário, o código do sombreador de aplicativo teria que impor isso manualmente. Do ponto de vista do runtime, DXGI_FORMAT_P010 não é diferente de DXGI_FORMAT_P016. Formatos válidos de exibição de dados chrominance (largura e altura são cada 1/2 do modo de exibição de luminância) para esse formato de recurso de vídeo são DXGI_FORMAT_R16G16_UNORM e DXGI_FORMAT_R16G16_UINT. Para UAVs, um formato de exibição de dados chrominance válido adicional é DXGI_FORMAT_R32_UINT. Usando DXGI_FORMAT_R32_UINT para UAVs, você pode ler e gravar em vez de apenas gravar para DXGI_FORMAT_R16G16_UNORM e DXGI_FORMAT_R16G16_UINT. Os tipos de exibição com suporte são SRV, RTV e UAV. Para exibição de dados de luminância, o mapeamento para o canal de exibição é Y-R16>. Para exibição de dados chrominance, o mapeamento para o canal de exibição é U-R16> e V-G16>. Para obter mais informações sobre formatos YUV para renderização de vídeo, consulte Formatos YUV recomendados de 8 bits para renderização de vídeo. Largura e altura devem ser uniformes. Recursos de preparo do Direct3D 11 e parâmetros initData para esse formato usam (rowPitch * (altura + (altura /2))) bytes. Os primeiros bytes (SysMemPitch * height) são o plano Y, os bytes restantes (SysMemPitch * (altura /2)) são o plano UV. Um aplicativo que usa os formatos YUY 4:2:0 deve mapear o plano luma (Y) separadamente dos planos chroma (UV). Os desenvolvedores fazem isso chamando ID3D12Device::CreateShaderResourceView duas vezes para a mesma textura e passando formatos de 1 canal e 2 canais. Passar um formato de 1 canal compatível com o plano Y mapeia apenas o plano Y. Passar um formato de dois canais compatível com os planos UV (juntos) mapeia apenas os planos você e V como uma única exibição de recurso. Direct3D 11.1: Esse valor não tem suporte até Windows 8. |
DXGI_FORMAT_P016 Valor: 105 Formato de recurso de vídeo YUV de 16 bits por canal 4:2:0. Os formatos de exibição de dados de luminância válidos para esse formato de recurso de vídeo são DXGI_FORMAT_R16_UNORM e DXGI_FORMAT_R16_UINT. Formatos válidos de exibição de dados chrominance (largura e altura são cada 1/2 do modo de exibição de luminância) para esse formato de recurso de vídeo são DXGI_FORMAT_R16G16_UNORM e DXGI_FORMAT_R16G16_UINT. Para UAVs, um formato de exibição de dados chrominance válido adicional é DXGI_FORMAT_R32_UINT. Usando DXGI_FORMAT_R32_UINT para UAVs, você pode ler e gravar em vez de apenas gravar para DXGI_FORMAT_R16G16_UNORM e DXGI_FORMAT_R16G16_UINT. Os tipos de exibição com suporte são SRV, RTV e UAV. Para exibição de dados de luminância, o mapeamento para o canal de exibição é Y-R16>. Para exibição de dados chrominance, o mapeamento para o canal de exibição é U-R16> e V-G16>. Para obter mais informações sobre formatos YUV para renderização de vídeo, consulte Formatos YUV recomendados de 8 bits para renderização de vídeo. Largura e altura devem ser uniformes. Recursos de preparo do Direct3D 11 e parâmetros initData para esse formato usam (rowPitch * (altura + (altura /2))) bytes. Os primeiros bytes (SysMemPitch * height) são o plano Y, os bytes restantes (SysMemPitch * (altura /2)) são o plano UV. Um aplicativo que usa os formatos YUY 4:2:0 deve mapear o plano luma (Y) separadamente dos planos chroma (UV). Os desenvolvedores fazem isso chamando ID3D12Device::CreateShaderResourceView duas vezes para a mesma textura e passando formatos de 1 canal e 2 canais. Passar um formato de 1 canal compatível com o plano Y mapeia apenas o plano Y. Passar um formato de dois canais compatível com os planos UV (juntos) mapeia apenas os planos você e V como uma única exibição de recurso. Direct3D 11.1: Esse valor não tem suporte até Windows 8. |
DXGI_FORMAT_420_OPAQUE Valor: 106 Formato de recurso de vídeo YUV de 8 bits por canal 4:2:0. Esse formato é subamostrado onde cada pixel tem seu próprio valor Y, mas cada bloco de 2x2 pixels compartilha um único valor de você e V. O runtime requer que a largura e a altura de todos os recursos criados com esse formato sejam múltiplos de 2. O runtime também requer que os membros esquerdo, direito, superior e inferior de qualquer RECT usado para esse formato sejam múltiplos de 2. Esse formato difere de DXGI_FORMAT_NV12 em que o layout dos dados dentro do recurso é completamente opaco para aplicativos. Os aplicativos não podem usar a CPU para mapear o recurso e acessar os dados dentro do recurso. Não é possível usar sombreadores com esse formato. Devido a esse comportamento, o hardware herdado que dá suporte a um layout não NV12 4:2:0 (por exemplo, YV12 e assim por diante) pode ser usado. Além disso, um novo hardware que tem uma implementação 4:2:0 melhor do que o NV12 pode ser usado quando o aplicativo não precisa que os dados estejam em um layout padrão. Para obter mais informações sobre formatos YUV para renderização de vídeo, consulte Formatos YUV recomendados de 8 bits para renderização de vídeo. Largura e altura devem ser uniformes. Recursos de preparo do Direct3D 11 e parâmetros initData para esse formato usam (rowPitch * (altura + (altura /2))) bytes. Um aplicativo que usa os formatos YUY 4:2:0 deve mapear o plano luma (Y) separadamente dos planos chroma (UV). Os desenvolvedores fazem isso chamando ID3D12Device::CreateShaderResourceView duas vezes para a mesma textura e passando formatos de 1 canal e 2 canais. Passar um formato de 1 canal compatível com o plano Y mapeia apenas o plano Y. Passar um formato de dois canais compatível com os planos UV (juntos) mapeia apenas os planos você e V como uma única exibição de recurso. Direct3D 11.1: Esse valor não tem suporte até Windows 8. |
DXGI_FORMAT_YUY2 Valor: 107 Formato de recurso de vídeo YUV 4:2:2 mais comum. Os formatos de exibição válidos para este formato de recurso de vídeo são DXGI_FORMAT_R8G8B8A8_UNORM e DXGI_FORMAT_R8G8B8A8_UINT. Para UAVs, um formato de exibição válido adicional é DXGI_FORMAT_R32_UINT. Usando DXGI_FORMAT_R32_UINT para UAVs, você pode ler e gravar em vez de apenas gravar para DXGI_FORMAT_R8G8B8A8_UNORM e DXGI_FORMAT_R8G8B8A8_UINT. Os tipos de exibição com suporte são SRV e UAV. Uma exibição fornece um mapeamento simples de toda a superfície. O mapeamento para o canal de exibição é Y0-R8>, U0-G8>, Y1-B8>, e V0-A8>. Um formato de exibição válido exclusivo para este formato de recurso de vídeo é DXGI_FORMAT_R8G8_B8G8_UNORM. Com esse formato de exibição, a largura do modo de exibição parece ser o dobro do que seria o modo de exibição DXGI_FORMAT_R8G8B8A8_UNORM ou DXGI_FORMAT_R8G8B8A8_UINT quando o hardware reconstrói o RGBA automaticamente na leitura e antes da filtragem. Esse comportamento de hardware direct3D é herdado e provavelmente não é mais útil. Com esse formato de exibição, o mapeamento para o canal de exibição é Y0-R8>, U0-> G8[0], Y1-B8>, e V0-> G8[1]. Para obter mais informações sobre formatos YUV para renderização de vídeo, consulte Formatos YUV recomendados de 8 bits para renderização de vídeo. A largura deve ser uniforme. Direct3D 11.1: Esse valor não tem suporte até Windows 8. |
DXGI_FORMAT_Y210 Valor: 108 Formato de recurso de vídeo yuv de 10 bits por canal 4:2:2. Formatos de exibição válidos para esse formato de recurso de vídeo são DXGI_FORMAT_R16G16B16A16_UNORM e DXGI_FORMAT_R16G16B16A16_UINT. O runtime não impõe se os 6 bits mais baixos são 0 (dado que esse formato de recurso de vídeo é um formato de 10 bits que usa 16 bits). Se necessário, o código do sombreador de aplicativo teria que impor isso manualmente. Do ponto de vista do runtime, DXGI_FORMAT_Y210 não é diferente de DXGI_FORMAT_Y216. Os tipos de exibição com suporte são SRV e UAV. Uma exibição fornece um mapeamento simples de toda a superfície. O mapeamento para o canal de exibição é Y0-R16>, U-G16>, Y1-B16>, e V-A16>. Para obter mais informações sobre formatos YUV para renderização de vídeo, consulte Formatos YUV recomendados de 8 bits para renderização de vídeo. A largura deve ser uniforme. Direct3D 11.1: Esse valor não tem suporte até Windows 8. |
DXGI_FORMAT_Y216 Valor: 109 Formato de recurso de vídeo yuv de 16 bits por canal 4:2:2. Formatos de exibição válidos para esse formato de recurso de vídeo são DXGI_FORMAT_R16G16B16A16_UNORM e DXGI_FORMAT_R16G16B16A16_UINT. Os tipos de exibição com suporte são SRV e UAV. Uma exibição fornece um mapeamento simples de toda a superfície. O mapeamento para o canal de exibição é Y0-R16>, U-G16>, Y1-B16>, e V-A16>. Para obter mais informações sobre formatos YUV para renderização de vídeo, consulte Formatos YUV recomendados de 8 bits para renderização de vídeo. A largura deve ser uniforme. Direct3D 11.1: Esse valor não tem suporte até Windows 8. |
DXGI_FORMAT_NV11 Valor: 110 Formato de recurso de vídeo yuv 4:1:1 mais comum. Formatos de exibição de dados de luminância válidos para esse formato de recurso de vídeo são DXGI_FORMAT_R8_UNORM e DXGI_FORMAT_R8_UINT. Formatos válidos de exibição de dados chrominance (largura e altura são cada 1/4 de exibição de luminância) para esse formato de recurso de vídeo são DXGI_FORMAT_R8G8_UNORM e DXGI_FORMAT_R8G8_UINT. Os tipos de exibição com suporte são SRV, RTV e UAV. Para exibição de dados de luminância, o mapeamento para o canal de exibição é Y-R8>. Para exibição de dados chrominance, o mapeamento para o canal de exibição é U-R8> e V-G8>. Para obter mais informações sobre formatos YUV para renderização de vídeo, consulte Formatos YUV recomendados de 8 bits para renderização de vídeo. Largura deve ser um múltiplo de 4. Recursos de preparo direct3D11 e parâmetros initData para esse uso de formato (rowPitch * altura * 2) bytes. Os primeiros bytes (SysMemPitch * height) são o plano Y, os próximos bytes ((SysMemPitch / 2) * height) são o plano UV e o restante é preenchimento. Direct3D 11.1: Esse valor não tem suporte até Windows 8. |
DXGI_FORMAT_AI44 Valor: 111 Formato YUV palletado de 4 bits que é comumente usado para a subpictura de DVD. Para obter mais informações sobre formatos YUV para renderização de vídeo, consulte Formatos YUV recomendados de 8 bits para renderização de vídeo. Direct3D 11.1: Esse valor não tem suporte até Windows 8. |
DXGI_FORMAT_IA44 Valor: 112 Formato YUV palletado de 4 bits que é comumente usado para a subpictura de DVD. Para obter mais informações sobre formatos YUV para renderização de vídeo, consulte Formatos YUV recomendados de 8 bits para renderização de vídeo. Direct3D 11.1: Esse valor não tem suporte até Windows 8. |
DXGI_FORMAT_P8 Valor: 113 Formato palletizado de 8 bits usado para dados RGB palletizados quando o processador processa dados ISDB-T e para dados YUV palletizados quando o processador processa dados BluRay. Para obter mais informações sobre formatos YUV para renderização de vídeo, consulte Formatos YUV recomendados de 8 bits para renderização de vídeo. Direct3D 11.1: Esse valor não tem suporte até Windows 8. |
DXGI_FORMAT_A8P8 Valor: 114 Formato palletado de 8 bits com 8 bits de alfa que é usado para dados YUV palletizados quando o processador processa dados BluRay. Para obter mais informações sobre formatos YUV para renderização de vídeo, consulte Formatos YUV recomendados de 8 bits para renderização de vídeo. Direct3D 11.1: Esse valor não tem suporte até Windows 8. |
DXGI_FORMAT_B4G4R4A4_UNORM Valor: 115 Um formato inteiro sem sinal de quatro componentes e 16 bits normalizado que dá suporte a 4 bits para cada canal, incluindo alfa. Direct3D 11.1: Esse valor não tem suporte até Windows 8. |
DXGI_FORMAT_P208 Valor: 130 Um formato de vídeo; uma versão de 8 bits de um formato planar híbrido 4:2:2. |
DXGI_FORMAT_V208 Valor: 131 Um formato de renderização YCbCrA 4:4 de 8 bits. |
DXGI_FORMAT_V408 Valor: 132 Um formato de renderização YCbCrA de 8 bits 4:4:4:4. |
DXGI_FORMAT_FORCE_UINT Valor: 0xffffffff Força essa enumeração a compilar para 32 bits de tamanho. Sem esse valor, alguns compiladores permitiriam que essa enumeração fosse compilada em um tamanho diferente de 32 bits. Este valor não é usado. |
Comentários
Ordem de bytes (LSB/MSB)
A maioria dos formatos tem componentes alinhados a bytes e os componentes estão em ordem de matriz C (o endereço mínimo vem primeiro). Para os formatos que não têm componentes alinhados à potência de 2, o primeiro componente nomeado está nos bits menos significativos.Codificação portátil para Endian-Independence
Em vez de ajustar se um sistema usa ordenação de bytes big-endian ou little-endian, você deve escrever código portátil, da seguinte maneira.
// 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
Restrições e anotações sobre formatos
Alguns formatos têm restrições adicionais e comportamento implícito:- Um recurso declarado com a DXGI_FORMAT_R32G32B32 família de formatos não pode ser usado simultaneamente para dados de vértice e textura. Ou seja, você não pode criar um recurso de buffer com a família DXGI_FORMAT_R32G32B32 de formatos que usa qualquer um dos seguintes sinalizadores de associação: D3D10_BIND_VERTEX_BUFFER, D3D10_BIND_INDEX_BUFFER, D3D10_BIND_CONSTANT_BUFFER ou D3D10_BIND_STREAM_OUTPUT (consulte D3D10_BIND_FLAG).
- DXGI_FORMAT_R1_UNORM foi projetado especificamente para filtragem de texto e deve ser usado com um modo de filtro 8x8 específico ao formato. Ao chamar uma função de amostragem HLSL usando esse formato, o parâmetro de deslocamento de endereço deve ser definido como (0,0).
- Um recurso que usa um formato sub-amostrado (como DXGI_FORMAT_R8G8_B8G8) deve ter um tamanho que seja um múltiplo de 2 na dimensão x.
- O formato não está disponível no Direct3D 10 e no Direct3D 10.1
- Esses formatos float têm um 1 implícito adicionado à sua mantissa. Se o expoente não for 0, 1.0 será adicionado à mantissa antes de aplicar o expoente.
- Esses formatos float não têm um 1 implícito adicionado à sua mantissa.
- Suporte ao desnorm: os formatos float de 9, 10, 11 e 16 bits dão suporte a desnorms.
- Sem suporte para desnorm: os formatos float de 32 e 64 bits liberam denorms para zero.
- Suporte ao formato DXGI para hardware de nível de recurso Direct3D 12.1
- Suporte ao formato DXGI para hardware de nível de recurso Direct3D 12.0
- Suporte ao formato DXGI para hardware de nível de recurso Direct3D 11.1
- Suporte ao formato DXGI para hardware de nível de recurso direct3D 11.0
- Suporte de hardware para formatos Direct3D 10Level9
- Suporte de hardware para formatos Direct3D 10.1
- Suporte de hardware para formatos Direct3D 10
Modificadores de formato
Cada valor de enumeração contém um modificador de formato que descreve o tipo de dados.Modificadores de formato | Descrição |
---|---|
_FLUTUAR | Um valor de ponto flutuante; Os formatos de ponto flutuante de 32 bits usam a precisão única do IEEE 754 (formato s23e8): bit de sinal, expoente tendencioso de 8 bits (127) e mantissa de 23 bits. Os formatos de ponto flutuante de 16 bits usam meia precisão (formato s10e5): bit de sinal, expoente com desvio de 5 bits (15) e mantissa de 10 bits. |
_SINT | Inteiro com sinal de complemento de dois. Por exemplo, um SINT de 3 bits representa os valores -4, -3, -2, -1, 0, 1, 2, 3. |
_SNORM | Inteiro normalizado com sinal; que é interpretado em um recurso como um inteiro com sinal e é interpretado em um sombreador como um valor de ponto flutuante normalizado com sinal no intervalo [-1, 1]. Para um número de complemento de 2, o valor máximo é 1,0f (um valor de 5 bits 01111 mapeia para 1,0f) e o valor mínimo é -1,0f (um valor de 5 bits 10000 mapeia para -1,0f). Além disso, o segundo número mínimo é mapeado para -1,0f (um valor de 5 bits 10001 é mapeado para -1,0f). As representações de inteiro resultantes são valores de ponto flutuante espaçados uniformemente no intervalo (-1,0f... 0,0f) e também um conjunto complementar de representações para números no intervalo (0,0f... 1,0f). |
_SRGB |
Dados RGB padrão, que exibem aproximadamente cores em uma rampa linear de níveis de luminosidade, de modo que um observador médio, em condições médias de visualização, possa exibi-los em uma exibição média.
Todos os 0's são mapeados para 0,0f e todos os 1's são mapeados para 1,0f. A sequência de codificações de inteiro sem sinal entre todos os 0 e todos os 1 representam uma progressão não linear na interpretação de ponto flutuante dos números entre 0,0f e 1,0f. Para obter mais detalhes, consulte o padrão de cores SRGB, IEC 61996-2-1, na IEC (Comissão Eletrotécnica Internacional). A conversão de ou para o espaço sRGB é feita automaticamente por funções de carga de textura D3DX10 ou D3DX9. Se um formato com _SRGB tiver um canal A, o canal A será armazenado em dados Gama 1.0f; os canais R, G e B no formato são armazenados em dados gama sRGB (segmento linear + 2,4 energia). |
_TYPELESS | Dados sem tipo, com um número definido de bits. Formatos sem tipo são projetados para criar recursos sem tipo; ou seja, um recurso cujo tamanho é conhecido, mas cujo tipo de dados ainda não está totalmente definido. Quando um recurso sem tipo é associado a um sombreador, o aplicativo ou sombreador deve resolve o tipo de formato (que deve corresponder ao número de bits por componente no formato sem tipo).
Um formato sem tipo contém um ou mais subformatações; cada subformatação resolve o tipo de dados. Por exemplo, no grupo R32G32B32, que define tipos para dados de 96 bits de três componentes, há um formato sem tipo e três subformatações totalmente tipados.
|
_UINT | Inteiro não assinado. Por exemplo, um UINT de 3 bits representa os valores 0, 1, 2, 3, 4, 5, 6, 7. |
_UNORM | Inteiro normalizado sem sinal; que é interpretado em um recurso como um inteiro sem sinal e é interpretado em um sombreador como um valor de ponto flutuante normalizado sem sinal no intervalo [0, 1]. Todos os 0's são mapeados para 0,0f e todos os 1's são mapeados para 1,0f. Uma sequência de valores de ponto flutuante espaçados uniformemente de 0,0f a 1,0f são representados. Por exemplo, um UNORM de 2 bits representa 0,0f, 1/3, 2/3 e 1,0f. |
_SHAREDEXP | Um expoente compartilhado. Todas as representações de ponto flutuante no formato compartilham um expoente. |
Novos formatos de recurso
O Direct3D 10 oferece novos formatos de compactação de dados para compactar dados de iluminação HDR (alto alcance dinâmico), mapas normais e campos de altura para uma fração de seu tamanho original. Esses tipos de compactação incluem:- Shared-Exponent formato HDR (high-dynamic range) (RGBE)
- Novo Block-Compressed formatos UNORM/SNORM de canal 1-2
Requisitos
Cabeçalho | dxgiformat.h |