Compartilhar via


enumeração D3D12_DESCRIPTOR_RANGE_FLAGS (d3d12.h)

Especifica a volatilidade dos descritores e dos dados referenciados em uma descrição da Assinatura Raiz 1.1, que pode habilitar algumas otimizações de driver.

Syntax

typedef enum D3D12_DESCRIPTOR_RANGE_FLAGS {
  D3D12_DESCRIPTOR_RANGE_FLAG_NONE = 0,
  D3D12_DESCRIPTOR_RANGE_FLAG_DESCRIPTORS_VOLATILE = 0x1,
  D3D12_DESCRIPTOR_RANGE_FLAG_DATA_VOLATILE = 0x2,
  D3D12_DESCRIPTOR_RANGE_FLAG_DATA_STATIC_WHILE_SET_AT_EXECUTE = 0x4,
  D3D12_DESCRIPTOR_RANGE_FLAG_DATA_STATIC = 0x8,
  D3D12_DESCRIPTOR_RANGE_FLAG_DESCRIPTORS_STATIC_KEEPING_BUFFER_BOUNDS_CHECKS = 0x10000
} ;

Constantes

 
D3D12_DESCRIPTOR_RANGE_FLAG_NONE
Valor: 0
Comportamento padrão. Os descritores são estáticos e as suposições padrão são feitas para dados (para SRV/CBV: DATA_STATIC_WHILE_SET_AT_EXECUTE e para UAV: DATA_VOLATILE).
D3D12_DESCRIPTOR_RANGE_FLAG_DESCRIPTORS_VOLATILE
Valor: 0x1
Se esse for o único conjunto de sinalizadores, os descritores serão voláteis e suposições padrão serão feitas sobre os dados (para SRV/CBV: DATA_STATIC_WHILE_SET_AT_EXECUTE e para UAV: DATA_VOLATILE).

Se esse sinalizador for combinado com DATA_VOLATILE, os descritores e os dados serão voláteis, o que equivale à Versão 1.0 da Assinatura Raiz.

Se esse sinalizador for combinado com DATA_STATIC_WHILE_SET_AT_EXECUTE, os descritores serão voláteis. Isso ainda não permite que eles sejam alterados durante a execução da lista de comandos, portanto, é válido combinar a declaração adicional de que os dados são estáticos enquanto definidos por meio da tabela de descritor raiz durante a execução – os descritores subjacentes são efetivamente estáticos por mais tempo do que os dados estão sendo prometidos para serem estáticos.
D3D12_DESCRIPTOR_RANGE_FLAG_DATA_VOLATILE
Valor: 0x2
Os descritores são estáticos e os dados são voláteis.
D3D12_DESCRIPTOR_RANGE_FLAG_DATA_STATIC_WHILE_SET_AT_EXECUTE
Valor: 0x4
Os descritores são estáticos e os dados são estáticos enquanto definidos em execução.
D3D12_DESCRIPTOR_RANGE_FLAG_DATA_STATIC
Valor: 0x8
Os descritores e os dados são estáticos. Isso maximiza o potencial de otimização do driver.
D3D12_DESCRIPTOR_RANGE_FLAG_DESCRIPTORS_STATIC_KEEPING_BUFFER_BOUNDS_CHECKS
Valor: 0x10000
Fornece os mesmos benefícios que descritores estáticos (consulte D3D12_DESCRIPTOR_RANGE_FLAG_NONE), exceto que o driver não tem permissão para promover buffers para descritores raiz como uma otimização, pois eles devem manter verificações de limites e os descritores raiz não os têm.

Comentários

Essa enumeração é usada pela estrutura D3D12_DESCRIPTOR_RANGE1 .

Para especificar a volatilidade apenas dos dados referenciados por descritores, consulte D3D12_ROOT_DESCRIPTOR_FLAGS.

Requisitos

   
Cabeçalho d3d12.h

Confira também

Enumerações principais

Assinatura raiz versão 1.1