énumération D3D12_TILED_RESOURCES_TIER (d3d12.h)
Identifie le niveau auquel les ressources en mosaïques sont prises en charge.
Syntaxe
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 Valeur : 0 Indique que les textures ne peuvent pas être créées avec la disposition D3D12_TEXTURE_LAYOUT_64KB_UNDEFINED_SWIZZLE . ID3D12Device::CreateReservedResource ne peut pas être utilisé, même pas pour les mémoires tampons. |
D3D12_TILED_RESOURCES_TIER_1 Valeur : 1 Indique que des textures 2D peuvent être créées avec la disposition D3D12_TEXTURE_LAYOUT_64KB_UNDEFINED_SWIZZLE. Des limitations existent pour certains formats et propriétés de ressources. Pour plus d’informations, consultez D3D12_TEXTURE_LAYOUT_64KB_UNDEFINED_SWIZZLE. ID3D12Device::CreateReservedResource peut être utilisé. Les lectures gpu ou les écritures dans les mappages NULL ne sont pas définis. Les applications sont encouragées à contourner cette limitation en mappant à plusieurs reprises la même page partout où un mappage NULL aurait été utilisé. Lorsque la taille d’un niveau mipmap de texture est un multiple entier de la forme de vignette standard pour son format, il est garanti qu’il ne soit pas empaqueté. |
D3D12_TILED_RESOURCES_TIER_2 Valeur : 2 Indique qu’un sur-ensemble de fonctionnalités Tier_1 est pris en charge, y compris cette prise en charge supplémentaire :
Les adaptateurs qui prennent en charge le niveau de fonctionnalité 12_0 prennent toutes en charge TIER_2 ou supérieur. |
D3D12_TILED_RESOURCES_TIER_3 Valeur : 3 Indique qu’un sur-ensemble de niveau 2 est pris en charge, en plus des textures 3D (ressources en mosaïques en volume) sont prises en charge. |
D3D12_TILED_RESOURCES_TIER_4 Valeur : 4 |
Notes
Cette énumération est utilisée par la structure D3D12_FEATURE_DATA_D3D12_OPTIONS .
Trois éléments distincts de fonctionnalités sont regroupés pour les fonctionnalités de ressources en mosaïques :
- Option de disposition de texture basée sur des vignettes où les adresses texel à proximité contiennent des coordonnées de données à proximité. Une vignette de texels contient presque la même quantité de texels dans chaque dimension cardinale de la ressource. Cette disposition est représentée dans D3D12 par D3D12_TEXTURE_LAYOUT_64KB_UNDEFINED_SWIZZLE.
- Réservez une région d’espace d’adressage virtuel pour une ressource, où chaque page est initialement mappée null. Dans D3D12, cette opération est encapsulée dans ID3D12Device::CreateReservedResource, qui fonctionne uniquement avec les textures qui ont la disposition D3D12_TEXTURE_LAYOUT_64KB_UNDEFINED_SWIZZLE.
- Possibilité de modifier les mappages de pages et de manipuler les données de texture sur les granularités des vignettes. Dans D3D12, ces opérations sont ID3D12CommandQueue::UpdateTileMappings, ID3D12CommandQueue::CopyTileMappings et ID3D12GraphicsCommandList::CopyTiles.
- Les pools de vignettes sont remplacés par des tas. Les tas fournissent un sur-ensemble de fonctionnalités que les pools de vignettes D3D11.
- Les ressources réservées peuvent être mappées à des pages à partir de plusieurs tas en même temps. La restriction D3D11 selon laquelle toutes les pages mappées non NULL doivent provenir du même tas n’existe pas.
- Les applications doivent connaître les fonctionnalités d’adresse virtuelle GPU, qui permettent des tests éclairés pour des scénarios d’utilisation particuliers. Voir D3D12_FEATURE_GPU_VIRTUAL_ADDRESS_SUPPORT.
Spécifications
En-tête | d3d12.h |