Compartilhar via


Formatos DXGI necessários

Este tópico apresenta os requisitos que os níveis de recursos do Microsoft Direct3D colocam no driver de exibição do modo de usuário.

A primeira e a segunda colunas da primeira tabela mostram todos os tipos de formato Direct3D aos quais o driver deve dar suporte. A terceira coluna mostra todos os valores constantes associados do direct3D D3D10_FORMAT_SUPPORT e/ou D3D11_FORMAT_SUPPORT enumerações que o driver deve dar suporte. A quarta coluna mostra o nível mínimo de recurso direct3D no qual o driver deve dar suporte a cada formato.

A segunda tabela mostra o algoritmo de suporte do Direct3D 10Level 9 para cada valor de enumeração.

Formato D3D9 (D3DDDIFMT_* e/ou D3DDECLTYPE Equivalente à API D3D10+ (DXGI_FORMAT_) Valores de enumeração D3D10_ ou D3D11_ FORMAT_SUPPORT_* necessários Nível mínimo necessário do Direct3D
A32B32G32R32F ou D3DDECLTYPE_FLOAT4 R32G32B32A32_FLOAT

IA_VERTEX_BUFFER

TEXTURE2D

TEXTURE3D

TEXTURECUBE

SHADER_LOAD

MIP

MIP_AUTOGEN

RENDER_TARGET

CPU_LOCKABLE

9_1

9_2

9_3

9_3

9_2

9_3

9_3

9_2

9_2

D3DDECLTYPE_FLOAT3 R32G32B32_FLOAT

IA_VERTEX_BUFFER

9_1

A16B16G16R16F ou D3DDECLTYPE_FLOAT16_4 R16G16B16A16_FLOAT

IA_VERTEX_BUFFER

TEXTURE2D

TEXTURE3D

TEXTURECUBE

SHADER_LOAD

MIP

MIP_AUTOGEN

RENDER_TARGET

BLENDABLE

CPU_LOCKABLE

9_3

9_2

9_2

9_2

9_2

9_2

9_2

9_2

9_3

9_2

A16B16G16R16 ou D3DDECLTYPE_USHORT4N R16G16B16A16_UNORM

TEXTURE2D

TEXTURE3D

TEXTURECUBE

SHADER_LOAD

SHADER_SAMPLE

MIP

MIP_AUTOGEN

RENDER_TARGET

CPU_LOCKABLE

9_2

9_2

9_2

9_2

9_2

9_2

9_2

9_2

9_2

Q16W16V16U16 ou D3DDECLTYPE_SHORT4N R16G16B16A16_SNORM

IA_VERTEX_BUFFER

9_1

D3DDECLTYPE_SHORT4 R16G16B16A16_SINT

IA_VERTEX_BUFFER

9_1

G32R32F ou D3DDECLTYPE_FLOAT2 R32G32_FLOAT

IA_VERTEX_BUFFER

TEXTURE2D

TEXTURE3D

TEXTURECUBE

SHADER_LOAD

RENDER_TARGET

CPU_LOCKABLE

9_1

9_3

9_3

9_3

9_3

9_3

9_3

D3DDECLTYPE_UBYTE4 R8G8B8A8_UINT

IA_VERTEX_BUFFER

9_1

A8R8G8B8 ou D3DDECLTYPE_UBYTE4N R8G8B8A8_UNORM

IA_VERTEX_BUFFER

TEXTURE2D

TEXTURE3D

TEXTURECUBE

SHADER_LOAD

SHADER_SAMPLE

MIP

MIP_AUTOGEN

RENDER_TARGET

BLENDABLE

CPU_LOCKABLE

DISPLAY

BACK_BUFFER_CAST

9_1

9_1

9_1

9_1

9_1

9_1

9_1

9_1

9_1

9_1

9_1

9_1

9_1

A8R8G8B8 R8G8B8A8_UNORM_SRGB

TEXTURE2D

TEXTURE3D

TEXTURECUBE

SHADER_LOAD

SHADER_SAMPLE

MIP

MIP_AUTOGEN

RENDER_TARGET

BLENDABLE

CPU_LOCKABLE

DISPLAY

BACK_BUFFER_CAST

9_1

9_1

9_1

9_1

9_1

9_1

9_1

9_1

9_1

9_1

9_1

9_1

Q8W8V8U8 R8G8B8A8_SNORM

TEXTURE2D

TEXTURECUBE

SHADER_LOAD

SHADER_SAMPLE

MIP

CPU_LOCKABLE

9_1

9_1

9_1

9_1

9_1

9_1

A8R8G8B8 B8G8R8A8_UNORM

TEXTURE2D

TEXTURE3D

TEXTURECUBE

SHADER_LOAD

SHADER_SAMPLE

MIP

MIP_AUTOGEN

RENDER_TARGET

BLENDABLE

CPU_LOCKABLE

DISPLAY

BACK_BUFFER_CAST

9_1

9_1

9_1

9_1

9_1

9_1

9_1

9_1

9_1

9_1

9_1

9_1

X8R8G8B8 B8G8R8X8_UNORM

TEXTURE2D

TEXTURE3D

TEXTURECUBE

SHADER_LOAD

SHADER_SAMPLE

MIP

MIP_AUTOGEN

RENDER_TARGET

BLENDABLE

CPU_LOCKABLE

9_1

9_1

9_1

9_1

9_1

9_1

9_1

9_1

9_1

9_1

A8R8G8B8 B8G8R8A8_UNORM_SRGB

TEXTURE2D

TEXTURE3D

TEXTURECUBE

SHADER_LOAD

SHADER_SAMPLE

MIP

MIP_AUTOGEN

RENDER_TARGET

BLENDABLE

CPU_LOCKABLE

DISPLAY

BACK_BUFFER_CAST

9_1

9_1

9_1

9_1

9_1

9_1

9_1

9_1

9_1

9_1

9_1

9_1

X8R8G8B8 B8G8R8X8_UNORM_SRGB

TEXTURE2D

TEXTURE3D

TEXTURECUBE

SHADER_LOAD

SHADER_SAMPLE

MIP

MIP_AUTOGEN

RENDER_TARGET

BLENDABLE

CPU_LOCKABLE

9_1

9_1

9_1

9_1

9_1

9_1

9_1

9_1

9_1

9_1

G16R16F ou D3DDECLTYPE_FLOAT16_2 R16G16_FLOAT

IA_VERTEX_BUFFER

TEXTURE2D

TEXTURE3D

TEXTURECUBE

SHADER_LOAD

MIP

MIP_AUTOGEN

RENDER_TARGET

CPU_LOCKABLE

9_3

9_2

9_2

9_2

9_2

9_2

9_2

9_2

9_2

G16R16 ou D3DDECLTYPE_USHORT2N R16G16_UNORM

TEXTURE2D

TEXTURE3D

TEXTURECUBE

SHADER_LOAD

SHADER_SAMPLE

MIP

MIP_AUTOGEN

RENDER_TARGET

CPU_LOCKABLE

9_2

9_2

9_2

9_2

9_2

9_2

9_2

9_2

9_2

V16U16 ou D3DDECLTYPE_SHORT2N R16G16_SNORM

IA_VERTEX_BUFFER

TEXTURE2D

TEXTURE3D

TEXTURECUBE

SHADER_LOAD

SHADER_SAMPLE

MIP

CPU_LOCKABLE

9_1

9_1

9_2

9_2

9_1

9_2

9_1

9_1

D3DDECLTYPE_SHORT2 R16G16_SINT

IA_VERTEX_BUFFER

9_1

R32F ou D3DDECLTYPE_FLOAT1 R32_FLOAT

IA_VERTEX_BUFFER

TEXTURE2D

TEXTURE3D

TEXTURECUBE

SHADER_LOAD

MIP

MIP_AUTOGEN

RENDER_TARGET

CPU_LOCKABLE

9_1

9_2

9_2

9_2

9_2

9_2

9_2

9_2

9_2

R32_UINT

IA_INDEX_BUFFER

9_1

S8D24 ou D24S8 D24_UNORM_S8_UINT

TEXTURE2D

DEPTH_STENCIL

9_1

9_1

L16 R16_UNORM

TEXTURE2D

TEXTURE3D

TEXTURECUBE

SHADER_LOAD

SHADER_SAMPLE

MIP

CPU_LOCKABLE

9_2

9_2

9_2

9_2

9_2

9_2

9_2

R16_UINT

IA_INDEX_BUFFER

9_1

D16 ou D16_LOCKABLE D16_UNORM

TEXTURE2D

DEPTH_STENCIL

9_1

9_1

V8U8 R8G8_SNORM

TEXTURE2D

SHADER_LOAD

SHADER_SAMPLE

MIP

CPU_LOCKABLE

9_1

9_1

9_1

9_1

9_1

L8 R8_UNORM

TEXTURE2D

TEXTURE3D

TEXTURECUBE

SHADER_LOAD

SHADER_SAMPLE

MIP

CPU_LOCKABLE

9_1

9_1

9_1

9_1

9_1

9_1

9_1

DXT1 BC1_UNORM ou BC1_UNORM_SRGB

TEXTURE2D

TEXTURECUBE

SHADER_LOAD

SHADER_SAMPLE

MIP

CPU_LOCKABLE

9_1

9_1

9_1

9_1

9_1

9_1

DXT2 BC2_UNORM ou BC2_UNORM_SRGB

TEXTURE2D

TEXTURECUBE

SHADER_LOAD

SHADER_SAMPLE

MIP

CPU_LOCKABLE

9_1

9_1

9_1

9_1

9_1

9_1

DXT4 BC3_UNORM ou BC3_UNORM_SRGB

TEXTURE2D

TEXTURECUBE

SHADER_LOAD

SHADER_SAMPLE

MIP

CPU_LOCKABLE

9_1

9_1

9_1

9_1

9_1

9_1

Valores de enumeração D3D10_ ou D3D11_ FORMAT_SUPPORT_* necessários Algoritmo de suporte no Direct3D 10Level 9

BACK_BUFFER_CAST

Considerado true para qualquer formato que dê suporte a DISPLAY.

BLENDABLE

Sem FORMATOP_NOALPHABLEND

CPU_LOCKABLE

Presumido sempre verdadeiro.

DISPLAY

Codificado em código.

IA_VERTEX_BUFFER

D3DDTCAPS_* (Consulte Observação.)

MIP

Sem FORMATOP_NOTEXCOORDWRAPNORMIP

MIP_AUTOGEN

(Consulte Observação.)

RENDER_TARGET

FORMATOP_OFFSCREEN_RENDERTARGET

SHADER_LOAD

Assumido para todos os formatos não detalhados.

SHADER_SAMPLE

(Consulte Observação.)

TEXTURE2D

FORMATOP_TEXTURE

TEXTURE3D

FORMATOP_VOLUMETEXTURE

TEXTURECUBE

FORMATOP_CUBETEXTURE

Nota Estes são mais detalhes sobre os requisitos do algoritmo de suporte no Direct3D 10Level 9:

  • Os formatos de IA_VERTEX_BUFFER e/ou IA_INDEX_BUFFER são compatíveis com o processamento de vértice de software se não houver D3DDEVCAPS_HWTRANSFORMANDLIGHT funcionalidade.
  • O formato TEXTURE2D também pode ser inferido por ser um formato de estêncil de profundidade.
  • Para o formato SHADER_SAMPLE, o driver deve dar suporte a FORMATOP_TEXTURE, FORMATOP_VOLUMETEXTURE ou FORMATOP_CUBETEXTURE e não deve relatar FORMATOP_NOFILTER.
  • Para o formato MIP_AUTOGEN, o Direct3D 10Level 9 gera seus próprios mip-maps, portanto, requer MIP, RENDER_TARGET e bits TEXTURE2D.