Camada 1
Esta seção descreve o suporte à camada 1.
Limitações gerais do nível 1
- Hardware no nível de recurso 11.0 no mínimo.
- Sem suporte para acolchoar.
- Sem suporte a Texture1D ou Texture3D.
- Sem suporte a 2, 8 ou 16 amostras de suavização de serrilhado múltiplo (MSAA). Apenas 4x é necessário, exceto sem formatos de 128 bpp.
- Nenhum padrão de swizzle padrão (o layout dentro de blocos de 64 KB e o empacotamento de mip final depende do fornecedor de hardware).
- Limitações sobre como os blocos podem ser acessados quando há mapeamentos duplicados. Consulte Limitações de acesso a blocos com mapeamentos duplicados.
Limitações específicas que afetam apenas o nível 1
Leitura/gravação em recursos de streaming que têm mapeamentos NULL
Os recursos de streaming podem ter mapeamentos NULL , mas a leitura ou gravação deles produz resultados indefinidos, incluindo o dispositivo removido. Os aplicativos podem contornar isso mapeando uma única página fictícia para todas as áreas vazias. Tome cuidado se você gravar e renderizar em uma página mapeada para vários locais de destino de renderização, pois a ordem das gravações será indefinida.
Nenhuma instrução de sombreador para fixar LOD e feedback de status mapeado
As instruções do sombreador para fixar o LOD e os comentários de status mapeados não estão disponíveis. Consulte Exposição de recursos de streaming HLSL.
Restrições de alinhamento para formas de bloco padrão
Só é garantido que os mips (começando pelos mais finos) cujas dimensões são todos múltiplos do tamanho padrão do bloco suportam as formas padrão do bloco e podem ter blocos individuais mapeados/não mapeados arbitrariamente. O primeiro mipmap em um recurso de streaming que tem qualquer dimensão que não seja um múltiplo do tamanho de bloco padrão, juntamente com todos os mipmaps mais grosseiros, pode ter uma forma de bloco não padrão, ajustando-se a N blocos de 64 KB para esse conjunto de mips de uma só vez (N relatado ao aplicativo). Esses N blocos são considerados empacotados como uma unidade, que deve ser totalmente mapeada ou totalmente não mapeada pelo aplicativo a qualquer momento, embora os mapeamentos de cada um dos N blocos possam estar em locais arbitrariamente disjuntos em um pool de blocos.
Matriz de mipmaps que não são um múltiplo do tamanho padrão do bloco
Os recursos de streaming com qualquer mipmaps que não seja um múltiplo do tamanho de bloco padrão em todas as dimensões não podem ter um tamanho de matriz maior que 1.
Alternando entre blocos de referência em um pool de blocos por meio de um recurso de Buffer e Textura
Para alternar entre a referência de blocos em um pool de blocos por meio de um recurso de Buffer para referenciar os mesmos blocos por meio de um recurso de Textura ou vice-versa, a atualização mais recente de mapeamentos de bloco ou a cópia de mapeamentos de bloco que define mapeamentos para esses blocos de pool de blocos deve ser para a mesma dimensão de recurso (Buffer versus Textura*) que a dimensão de recurso que será usada para acessar os blocos. Caso contrário, o comportamento é indefinido, incluindo a chance de redefinição do dispositivo.
Portanto, por exemplo, é inválido atualizar os mapeamentos de bloco para definir mapeamentos de bloco para um Buffer e, em seguida, atualizar os mapeamentos de bloco para os mesmos blocos no pool de blocos por meio de um recurso Texture2D e, em seguida, acessar os blocos por meio do Buffer. As operações de solução alternativa são redefinir mapeamentos de bloco para um recurso ao alternar entre blocos de compartilhamento de Buffer e Textura (ou vice-versa) ou simplesmente nunca compartilhar blocos em um pool de blocos entre recursos de Buffer e recursos de Textura.
Filtragem de redução mínima/máxima
A filtragem de redução mínima/máxima não é suportada. Consulte Recursos de amostragem de textura de recursos de streaming.
Tópicos relacionados
Recursos de streaming Camadas de recursos