D3D12_TILED_RESOURCES_TIER enumeração (d3d12.h)

Identifica o nível de camada no qual há suporte para recursos em bloco.

Syntax

typedef enum D3D12_TILED_RESOURCES_TIER {
  D3D12_TILED_RESOURCES_TIER_NOT_SUPPORTED = 0,
  D3D12_TILED_RESOURCES_TIER_1 = 1,
  D3D12_TILED_RESOURCES_TIER_2 = 2,
  D3D12_TILED_RESOURCES_TIER_3 = 3,
  D3D12_TILED_RESOURCES_TIER_4 = 4
} ;

Constantes

 
D3D12_TILED_RESOURCES_TIER_NOT_SUPPORTED
Valor: 0
Indica que as texturas não podem ser criadas com o layout de D3D12_TEXTURE_LAYOUT_64KB_UNDEFINED_SWIZZLE .



ID3D12Device::CreateReservedResource não pode ser usado, nem mesmo para buffers.
D3D12_TILED_RESOURCES_TIER_1
Valor: 1
Indica que texturas 2D podem ser criadas com o layout D3D12_TEXTURE_LAYOUT_64KB_UNDEFINED_SWIZZLE.
Existem limitações para determinados formatos e propriedades de recursos.
Para obter mais detalhes, consulte D3D12_TEXTURE_LAYOUT_64KB_UNDEFINED_SWIZZLE.



ID3D12Device::CreateReservedResource pode ser usado.


As leituras ou gravações de GPU em mapeamentos NULL são indefinidas.
Os aplicativos são incentivados a solucionar essa limitação mapeando repetidamente a mesma página para todos os lugares em que um mapeamento NULL teria sido usado.


Quando o tamanho de um nível de mipmap de textura é um múltiplo inteiro da forma de bloco padrão para seu formato, é garantido que ele não esteja empacotado.
D3D12_TILED_RESOURCES_TIER_2
Valor: 2
Indica que há suporte para um superconjunto de Tier_1 funcionalidade, incluindo este suporte adicional:



  • Quando o tamanho de um nível de mipmap de textura é pelo menos uma forma de bloco padrão para seu formato, o nível de mipmap é garantido como não empacotado.
    Para obter mais informações, consulte D3D12_PACKED_MIP_INFO.

  • As instruções de sombreador estão disponíveis para fixar lod (nível de detalhes) e para obter status sobre a operação de sombreador.
    Para obter informações sobre uma dessas instruções de sombreador, consulte Sample(S, float,int,float,uint).
    Sample(S,float,int,float,uint).

  • A leitura de blocos mapeados em NULL trata esse valor amostrado como zero.
    As gravações em blocos mapeados em NULL são descartadas.


Adaptadores que dão suporte ao nível de recurso 12_0 dão suporte a TIER_2 ou superior.
D3D12_TILED_RESOURCES_TIER_3
Valor: 3
Indica que há suporte para um superconjunto da Camada 2, com a adição de que há suporte para texturas 3D (Recursos em Blocos de Volume).
D3D12_TILED_RESOURCES_TIER_4
Valor: 4

Comentários

Essa enumeração é usada pela estrutura D3D12_FEATURE_DATA_D3D12_OPTIONS .

Há três partes discretas de funcionalidade agrupadas para a funcionalidade de recurso em bloco:

Três alterações significativas sobre D3D11 são:
  • Os pools de blocos são substituídos por heaps. Os heaps fornecem um superconjunto de recursos do que os pools de blocos D3D11.
  • Os recursos reservados podem ser mapeados para páginas de vários heaps ao mesmo tempo. A restrição D3D11 de que todas as páginas mapeadas não NULL devem vir do mesmo heap não existe.
  • Os aplicativos devem estar cientes dos recursos de endereço virtual de GPU, que permitem testes litmus para cenários de uso específicos. Consulte D3D12_FEATURE_GPU_VIRTUAL_ADDRESS_SUPPORT.

Requisitos

   
Cabeçalho d3d12.h

Confira também

Enumerações principais