Compartilhar via


Níveis de recursos de hardware

Descreve a funcionalidade dos níveis de recurso de hardware 11_0 a 12_1.

Para lidar com a diversidade de placas de vídeo em computadores novos e existentes, o Microsoft Direct3D 11 introduziu o conceito de níveis de recursos. Cada placa de vídeo implementa um determinado nível de funcionalidade do Microsoft DirectX (DX), dependendo das GPUs (unidades de processamento gráfico) instaladas. Um nível de recurso é um conjunto bem definido de funcionalidade de GPU. Por exemplo, o nível de recurso 11_0 implementa a funcionalidade que foi implementada no Direct3D 11.

Agora, ao criar um dispositivo, você pode tentar criar um dispositivo para o nível de recurso que deseja solicitar. Se a criação do dispositivo funcionar, esse nível de recurso existirá, caso contrário, o hardware não oferecerá suporte a esse nível de recurso. Você pode tentar recriar um dispositivo em um nível de recurso inferior ou pode optar por sair do aplicativo.

As propriedades básicas dos níveis de recurso são:

  • Todos os drivers Direct3D 12 serão Nível de Recurso 11_0 ou superior.
  • Uma GPU que permite que um dispositivo seja criado atende ou excede a funcionalidade desse nível de recurso.
  • Um nível de recurso sempre inclui a funcionalidade de níveis de recursos anteriores ou inferiores.
  • Um nível de recurso não implica desempenho, apenas funcionalidade. O desempenho depende da implementação de hardware.
  • Um nível de recurso é escolhido quando você chama D3D12CreateDevice.
  • Para obter informações mais detalhadas sobre recursos com suporte (especialmente aqueles marcados opcionais na tabela abaixo, o que significa que o hardware pode dar suporte ao recurso, mas não é necessário) chamar CheckFeatureSupport.

Para obter informações sobre as limitações de criação de dispositivos de tipo não hardware em determinados níveis de recursos, consulte Limitações de criação de dispositivos WARP e de referência. Para obter mais informações sobre a introdução dos níveis de recursos, consulte a documentação do Direct3D 11 sobre níveis de recursos do Direct3D.

Sistemas de Numeração

Os níveis de recursos de hardware não o mesmo que as versões da API. Por exemplo, há uma API D3D11.3, mas não há nível de recurso de hardware 11_3. Os níveis de recurso são definidos na enumeração D3D_FEATURE_LEVEL.

Há três sistemas de numeração distintos:

  • As versões do Direct3D usam um período; por exemplo, Direct3D 12.0.
  • Os modelos de sombreador usam um período; por exemplo, o modelo de sombreador 5.1.
  • Os níveis de recursos usam um sublinhado; por exemplo, nível de recurso 12_0.

Suporte ao nível do recurso

Os recursos a seguir estão disponíveis para cada nível de recurso do Direct3D.

Os títulos na linha superior são níveis de recurso Direct3D. Os títulos na coluna à esquerda são recursos.

Recurso \ Nível de Recurso 12_1⁰ 12_0⁰ 11_1¹ 11_0
Modelo de sombreador 6.0 6.0 6.0/5.1² 6.0/5.1²
da Camada de Associação de Recursos do Tier2ó Tier2ó Camada13 Camada13
recursos em blocos Tier2ó Tier2ó Opcional Opcional
de Rasterização Conservadora Camada13 Opcional Opcional Não
exibições ordenadas do rasterizador Sim Opcional Opcional Não
filtros mínimos/máximos Sim Sim Opcional Não
Mapear buffer padrão Opcional Opcional Opcional Opcional
valor de referência de estêncil especificado do sombreador Opcional Opcional Opcional Não
cargas de exibição de acesso não ordenado digitados 18 formatos, mais opcionais 18 formatos, mais opcionais 3 formatos, mais opcionais 3 formatos, mais opcionais
sombreador geometry Sim Sim Sim Sim
stream out Sim Sim Sim Sim
de Sombreador de Computação/DirectCompute Sim Sim Sim Sim
Hull e Sombreadores de Domínio Sim Sim Sim Sim
matrizes de recursos de textura Sim Sim Sim Sim
matrizes de recursos de cubemap Sim Sim Sim Sim
de compactação BC1 a BC7 Sim Sim Sim Sim
alfa-to-coverage Sim Sim Sim Sim
operações lógicas (fusão de saída) Sim Sim Sim Opcional
Rasterização independente de destino Sim Sim Sim Não
MRT (destino de renderização múltipla) com ForcedSampleCount 1 Sim Sim Sim Opcional
contagem máxima de exemplos forçados para de renderização somente UAV 16 16 16 8
Dimensão máxima da textura 16384 16384 16384 16384
Dimensão máxima do cubemap 16384 16384 16384 16384
Extensão máxima do volume 2048 2048 2048 2048
Repetição máxima de textura 16384 16384 16384 16384
Anisotropia Máxima 16 16 16 16
Contagem primitiva máxima 2^32 – 1 2^32 – 1 2^32 – 1 2^32 – 1
Índice máximo de vértice 2^32 – 1 2^32 – 1 2^32 – 1 2^32 – 1
Máximo de slots de entrada 32 32 32 32
Destinos de renderização simultâneos 8 8 8 8
Consultas de oclusão Sim Sim Sim Sim
Separar a Mistura Alfa Sim Sim Sim Sim
Espelhar uma vez Sim Sim Sim Sim
Elementos de vértice sobrepostos Sim Sim Sim Sim
Máscaras de Gravação Independentes Sim Sim Sim Sim
Instância Sim Sim Sim Sim

 

  • ⁰ Requer o runtime direct3D 11.3 ou Direct3D 12.
  • ¹ Requer o runtime do Direct3D 11.1.
  • O modelo 5.0 de sombreador de ² pode, opcionalmente, dar suporte a sombreadores de precisão dupla, sombreadores de precisão dupla estendidos, instrução de sombreador SAD4 e sombreadores de precisão parcial. Para determinar as opções do modelo de sombreador 5.0 disponíveis, chame ID3D12Device::CheckFeatureSupport. Alguma compatibilidade depende do hardware em que você está executando: o modelo de sombreador 5.1 só tem suporte no hardware que dá suporte à API do DirectX 12, independentemente do nível de recurso que está sendo usado. O hardware do DirectX 11 só dá suporte ao modelo de sombreador 5.0. A API do DirectX 12 só vai para o nível de recurso 11_0.
  • As camadas ó superiores são opcionais.
  • Os níveis de recursos 12_0 e 12_1 exigem o runtime direct3D 11.3 ou Direct3D 12.
  • O nível de recurso 11_1 requer o runtime do Direct3D 11.1.
  • O nível de recurso 11_0 requer o runtime do Direct3D 11.0.

Suporte de hardware para formatos DXGI

Para exibir tabelas de formatos DXGI e recursos de hardware, consulte:

de consulta de funcionalidade

noções básicas sobre o Direct3D 12