Compartilhar via


Método ID3D12GraphicsCommandList1::SetViewInstanceMask (d3d12.h)

Defina uma máscara que controla quais instâncias de exibição estão habilitadas para os sorteios subsequentes.

Sintaxe

void SetViewInstanceMask(
  [in] UINT Mask
);

Parâmetros

[in] Mask

Tipo: UINT

Uma máscara que especifica quais exibições estão habilitadas ou desabilitadas. Se o bit i a partir do bit menos significativo estiver definido, exiba a instância i habilitada.

Retornar valor

Nenhum

Comentários

A máscara de instância de exibição afeta apenas os PSOs que declaram o mascaramento de instância de exibição especificando o sinalizador D3D12_VIEW_INSTANCING_FLAG_ENABLE_VIEW_INSTANCE_MASKING durante a criação. A tentativa de criar um PSO que declare o mascaramento de instância de exibição falhará em adaptadores que não dão suporte à instanciação de exibição.

A máscara de instância de exibição usa como padrão 0, o que desabilita todos os modos de exibição. Isso força os aplicativos que declaram o mascaramento de instância de exibição a escolher explicitamente as exibições a serem habilitadas; caso contrário, nada será renderizado. Se a máscara de instância de exibição tiver habilitado todos os modos de exibição por padrão, talvez o aplicativo não se lembre de desabilitar exibições não utilizados, resultando em desempenho perdido devido ao desperdício de trabalho.

Os pacotes não herdam a máscara de instância de exibição do chamador, usando como padrão 0. Isso ocorre porque a configuração de máscara deve ser conhecida quando o pacote é registrado se afeta como um registro de implementação desenha. No entanto, a máscara de instância de exibição definida por um pacote persiste para o chamador após a conclusão do pacote. Essas semânticas de herança são semelhantes às de PSOs.

Nenhum caminho de código de sombreador dependente de SV_ViewID são executados em qualquer estágio de sombreador para instâncias de exibição mascaradas e nenhum recorte, processamento de visor ou rasterização é executado. Implementações que inspecionam a máscara durante a renderização podem incorrer em uma pequena penalidade de desempenho em PSOs que não declaram mascaramento de instância de exibição, mas geralmente a penalidade pode ser superada pela economia de desempenho resultante da falta do trabalho associado aos modos de exibição mascarados. Dependendo da frequência e da quantidade de trabalho ignorado, os ganhos de desempenho podem ser significativos.

Requisitos

Requisito Valor
Plataforma de Destino Windows
Cabeçalho d3d12.h

Confira também

ID3D12GraphicsCommandList1