Níveis de recursos de hardware
Descreve a funcionalidade dos níveis de recurso de hardware 11_0 a 12_1.
- Sistemas de Numeração
- Suporte ao nível do recurso
- Suporte de hardware para formatos DXGI
- Tópicos relacionados
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 cartão 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 for possível criar um dispositivo, isso significa que o nível de recursos existe; caso contrário, o hardware não permite tal nível de recursos. Você pode tentar recriar um dispositivo em um nível de recursos inferior ou 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 como Opcionais na tabela abaixo, o que significa que o hardware pode dar suporte ao recurso, mas não é necessário) chame CheckFeatureSupport.
Para obter informações sobre limitações na criação de dispositivos de tipo não hardware em determinados níveis de recursos, consulte Limitações ao criar 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 os níveis de recursos do Direct3D.
Sistemas de Numeração
Os níveis de recursos de hardware não são iguais às 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, modelo de sombreador 5.1.
- Os níveis de recurso 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 recursos do 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² |
Camada de Associação de Recursos | Camada2ódico | Camada2ódico | Tier1ódico | Tier1ódico |
Recursos em bloco | Camada2ódico | Camada2ódico | Opcional | Opcional |
Rasterização conservativa | Tier1ódico | Opcional | Opcional | Não |
Modos de exibição ordenados 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 pelo sombreador | Opcional | Opcional | Opcional | Não |
Cargas de exibição de acesso não ordenadas digitadas | 18 formatos, mais opcionais | 18 formatos, mais opcionais | 3 formatos, mais opcionais | 3 formatos, mais opcionais |
Sombreador de geometria | Sim | Sim | Sim | Sim |
Stream Out | Sim | Sim | Sim | Sim |
Sombreador DirectCompute/Compute | Sim | Sim | Sim | Sim |
Sombreadores hull e domain | Sim | Sim | Sim | Sim |
Matrizes de recursos de textura | Sim | Sim | Sim | Sim |
Matrizes de recursos de cubemap | Sim | Sim | Sim | Sim |
Compactação BC1 a BC7 | Sim | Sim | Sim | Sim |
Alpha-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 renderização somente UAV | 16 | 16 | 16 | 8 |
Dimensão máxima de textura | 16384 | 16384 | 16384 | 16384 |
Dimensão de Mapa de Cubo Máximo | 16384 | 16384 | 16384 | 16384 |
Extensão máxima do volume | 2.048 | 2.048 | 2.048 | 2.048 |
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 |
Separação do Alpha Blend | 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 |
Instanciação | Sim | Sim | Sim | Sim |
- ⁰ Requer o runtime do Direct3D 11.3 ou Direct3D 12.
- ¹ Requer o runtime do Direct3D 11.1.
- O modelo de sombreador 5.0 ² 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 dá suporte apenas ao modelo de sombreador 5.0. A API do DirectX 12 só vai para o nível de recurso 11_0.
- Ascamadas são opcionais.
- Os níveis de recursos 12_0 e 12_1 exigem o runtime do 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:
- Suporte ao formato DXGI para hardware de nível de recurso 12.1 do Direct3D
- Suporte ao formato DXGI para hardware de nível de recurso 12.0 direct3D
- Suporte ao formato DXGI para hardware de nível de recurso 11.1 do Direct3D
- Suporte ao formato DXGI para hardware de nível de recurso 11.0 direct3D
- Suporte de hardware para formatos Direct3D 10Level9
- Suporte de hardware para formatos Direct3D 10.1
- Suporte de hardware para formatos Direct3D 10
Tópicos relacionados