Compartilhar via


Camada 2

O suporte da Camada 2 para recursos de streaming adiciona recursos além da Camada 1, como garantir mipmap de textura não compactada quando o tamanho é pelo menos uma forma de bloco padrão; instruções de sombreador para fixar o nível de detalhe (LOD) e para obter o status sobre a operação do sombreador; além disso, a leitura de blocos mapeados por NULL trata esse valor amostrado como zero.

Suporte geral de nível 2

O suporte de nível 2 inclui o seguinte.

  • Hardware no nível de recurso 11.1 no mínimo.
  • Todos os recursos do nível anterior (sem limitações específicas do Nível 1 ) mais as adições nestes itens a seguir:
  • Instruções de sombreador para fixar LOD e feedback de status mapeado estão disponíveis. Consulte Exposição de recursos de streaming HLSL.

Além disso, existem alguns problemas específicos de suporte a seguir.

Blocos não mapeados

As leituras de blocos não mapeados retornam 0 em todos os componentes não ausentes do formato e o padrão para componentes ausentes.

As gravações em blocos não mapeados são impedidas de ir para a memória, mas podem acabar em caches que as leituras subsequentes para o mesmo endereço podem ou não selecionar.

Filtragem de textura

A filtragem de textura com um volume que abrange blocos NULL e não NULL contribui com 0 (com padrões para componentes de formato ausentes) para texels em blocos NULL na operação geral do filtro. Alguns hardwares anteriores não atendem a esse requisito e retornam 0 (com padrões para componentes de formato ausentes) para o resultado completo do filtro se algum texels (com peso diferente de zero) cair em um bloco NULL . Nenhum outro hardware poderá perder o requisito de incluir todos os texels (ponderados diferentes de zero) na operação de filtro.

Os acessos de texel NULL fazem com que a operação CheckAccessFullyMapped nos comentários de status de uma leitura de textura retorne false. Isso ocorre independentemente de como o resultado do acesso à textura pode ser mascarado por gravação no sombreador e quantos componentes estão no formato de textura (cuja combinação pode fazer parecer que a textura não precisa ser acessada).

Restrições de alinhamento

Restrições de alinhamento para formas de bloco padrão: os mipmaps que preenchem pelo menos um bloco padrão em todas as dimensões têm a garantia de usar o bloco padrão, com o restante considerado empacotado como uma unidade em N blocos (N relatado ao aplicativo). O aplicativo pode mapear os N blocos em locais arbitrariamente disjuntos em um pool de blocos, mas deve mapear todos ou nenhum dos blocos compactados. O empacotamento mip é um conjunto exclusivo de blocos compactados por fatia de matriz.

Filtragem de redução mínima/máxima

A filtragem de redução mínima/máxima é suportada. Consulte Recursos de amostragem de textura de recursos de streaming.

Limitações

Os recursos de streaming com qualquer mipmaps menor que o tamanho de bloco padrão em qualquer dimensão não podem ter um tamanho de matriz maior que 1.

As limitações sobre como os blocos podem ser acessados quando há mapeamentos duplicados continuam a ser aplicadas. Consulte Limitações de acesso a blocos com mapeamentos duplicados.

Recursos de streaming Camadas de recursos