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 de recurso
- suporte 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 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:
- 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 a hardware para formatos Direct3D 10.1
- suporte de hardware para formatos Direct3D 10
Tópicos relacionados