énumération D3D12_DESCRIPTOR_HEAP_FLAGS (d3d12.h)
Spécifie les options d’un tas.
Syntaxe
typedef enum D3D12_DESCRIPTOR_HEAP_FLAGS {
D3D12_DESCRIPTOR_HEAP_FLAG_NONE = 0,
D3D12_DESCRIPTOR_HEAP_FLAG_SHADER_VISIBLE = 0x1
} ;
Constantes
D3D12_DESCRIPTOR_HEAP_FLAG_NONE Valeur : 0 Indique l’utilisation par défaut d’un tas. |
D3D12_DESCRIPTOR_HEAP_FLAG_SHADER_VISIBLE Valeur : 0x1 L’indicateur D3D12_DESCRIPTOR_HEAP_FLAG_SHADER_VISIBLE peut éventuellement être défini sur un tas de descripteur pour indiquer qu’il est lié à une liste de commandes à des fins de référence par les nuanceurs. Les segments de descripteurs créés sans cet indicateur permettent aux applications de mettre en scène des descripteurs dans la mémoire du processeur avant de les copier dans un tas de descripteur visible du nuanceur, par commodité. Mais il est également bon pour les applications de créer directement des descripteurs dans des tas de descripteurs visibles du nuanceur sans avoir à mettre en scène quoi que ce soit sur le processeur. Les tas de descripteurs liés via ID3D12GraphicsCommandList::SetDescriptorHeaps doivent avoir l’indicateur D3D12_DESCRIPTOR_HEAP_FLAG_SHADER_VISIBLE défini, sinon la couche de débogage génère une erreur. Les tas de descripteurs avec l’indicateur D3D12_DESCRIPTOR_HEAP_FLAG_SHADER_VISIBLE ne peuvent pas être utilisés comme tas sources dans les appels à ID3D12Device::CopyDescriptors ou ID3D12Device::CopyDescriptorsSimple, car ils peuvent résider dans WRITE_COMBINE mémoire ou mémoire locale GPU, ce qui est très inefficace pour la lecture. Cet indicateur s’applique uniquement aux tas de descripteurs CBV/SRV/UAV et aux tas de descripteurs d’échantillonneur. Elle ne s’applique pas aux autres types de tas de descripteurs, car les nuanceurs ne référencent pas directement les autres types. La tentative de création d’un tas RTV/DSV avec D3D12_DESCRIPTOR_HEAP_FLAG_SHADER_VISIBLE entraîne une erreur de couche de débogage. |
Notes
Cette énumération est utilisée par la structure D3D12_DESCRIPTOR_HEAP_DESC .
Spécifications
En-tête | d3d12.h |