Syntaxe
Membres
TypeType : D3D12_RAYTRACING_ACCELERATION_STRUCTURE_TYPE Le type de structure d’accélération à générer. Flags
Type : D3D12_RAYTRACING_ACCELERATION_STRUCTURE_BUILD_FLAGS Les indicateurs de génération. NumDescs
Type : UINT Si Type est D3D12_RAYTRACING_ACCELERATION_STRUCTURE_TOP_LEVEL, cette valeur est le nombre d’instances, disposées selon DescsLayout. Si Type est D3D12_RAYTRACING_ACCELERATION_STRUCTURE_BOTTOM_LEVEL, cette valeur est le nombre d’éléments référencés par pGeometryDescs ou ppGeometryDescs. Le champ utilisé dépend de DescsLayout. DescsLayout
Type : D3D12_ELEMENTS_LAYOUT La façon dont les descriptions de géométrie sont spécifiées : soit un tableau de descriptions, soit un tableau de pointeurs vers des descriptions. InstanceDescs
Type : D3D12_GPU_VIRTUAL_ADDRESS Si Type est D3D12_RAYTRACING_ACCELERATION_STRUCTURE_TOP_LEVEL, ce paramètre fait référence à NumDescs structures D3D12_RAYTRACING_INSTANCE_DESC en mémoire GPU décrivant des instances. Chaque instance doit être alignée sur 16 octets, valeur définie par D3D12_RAYTRACING_INSTANCE_DESC_BYTE_ALIGNMENT. Si Type n’est pas D3D12_RAYTRACING_ACCELERATION_STRUCTURE_TOP_LEVEL, ce paramètre n’est pas utilisé. Si DescLayout est D3D12_ELEMENTS_LAYOUT_ARRAY, InstanceDescs pointe vers un tableau de descriptions d’instances en mémoire GPU. Si DescLayout est D3D12_ELEMENTS_LAYOUT_ARRAY_OF_POINTERS, InstanceDescs pointe vers un tableau en mémoire GPU de pointeurs D3D12_GPU_VIRTUAL_ADDRESS vers des descriptions d’instances. La mémoire pointée doit être dans l’état D3D12_RESOURCE_STATE_NON_PIXEL_SHADER_RESOURCE. pGeometryDescs
Type : const D3D12_RAYTRACING_GEOMETRY_DESC * Si Type est D3D12_RAYTRACING_ACCELERATION_STRUCTURE_BOTTOM_LEVEL et que DescsLayout est D3D12_ELEMENTS_LAYOUT_ARRAY, ce champ est utilisé et pointe vers NumDescs structures D3D12_RAYTRACING_GEOMETRY_DESC contiguës sur le processeur, qui décrivent des géométries individuelles. Si Type n’est pas D3D12_RAYTRACING_ACCELERATION_STRUCTURE_BOTTOM_LEVEL ou que DescsLayout n’est pas D3D12_ELEMENTS_LAYOUT_ARRAY, ce paramètre n’est pas utilisé. ppGeometryDescs
Type : const D3D12_RAYTRACING_GEOMETRY_DESC *const * Si Type est D3D12_RAYTRACING_ACCELERATION_STRUCTURE_BOTTOM_LEVEL et que DescsLayout est D3D12_ELEMENTS_LAYOUT_ARRAY_OF_POINTERS, ce champ est utilisé et pointe vers un tableau de NumDescs pointeurs vers des structures D3D12_RAYTRACING_GEOMETRY_DESC sur le processeur, qui décrivent des géométries individuelles.
Remarques
Lorsqu’elle est utilisée avec GetRaytracingAccelerationStructurePrebuildInfo, qui effectue réellement une génération, tout paramètre référencé au moyen de D3D12_GPU_VIRTUAL_ADDRESS (une adresse en mémoire GPU), comme InstanceDescs, ne sera pas accédé par l’opération. Cette mémoire n’a donc pas besoin d’être déjà initialisée ni d’être dans un état de ressource particulier. L’opération peut vérifier si les adresses GPU sont nulles ou non, même si les pointeurs ne sont pas déréférencés.Configuration requise
En-tête : d3d12_xs.hBibliothèque : d3d12_xs.lib
Plateformes prises en charge : consoles XBOX Series
