Sintaxe
Membros
TypeTipo: D3D12_RAYTRACING_ACCELERATION_STRUCTURE_TYPE O tipo de estrutura de aceleração a ser criada. Flags
Tipo: D3D12_RAYTRACING_ACCELERATION_STRUCTURE_BUILD_FLAGS Os sinalizadores de criação. NumDescs
Tipo: UINT Se Type for D3D12_RAYTRACING_ACCELERATION_STRUCTURE_TOP_LEVEL, esse valor será o número de instâncias, dispostas com base em DescsLayout. Se Type for D3D12_RAYTRACING_ACCELERATION_STRUCTURE_BOTTOM_LEVEL, esse valor será o número de elementos referenciados por pGeometryDescs ou ppGeometryDescs. Qual desses campos é usado depende de DescsLayout. DescsLayout
Tipo: D3D12_ELEMENTS_LAYOUT Como as descrições de geometria são especificadas: uma matriz de descrições ou uma matriz de ponteiros para descrições. InstanceDescs
Tipo: D3D12_GPU_VIRTUAL_ADDRESS Se Type for D3D12_RAYTRACING_ACCELERATION_STRUCTURE_TOP_LEVEL, isso se refere a NumDescs estruturas D3D12_RAYTRACING_INSTANCE_DESC na memória da GPU que descrevem instâncias. Cada instância deve estar alinhada a 16 bytes, definido como D3D12_RAYTRACING_INSTANCE_DESC_BYTE_ALIGNMENT. Se Type não for D3D12_RAYTRACING_ACCELERATION_STRUCTURE_TOP_LEVEL, esse parâmetro não será usado. Se DescLayout for D3D12_ELEMENTS_LAYOUT_ARRAY, InstanceDescs apontará para uma matriz de descrições de instâncias na memória da GPU. Se DescLayout for D3D12_ELEMENTS_LAYOUT_ARRAY_OF_POINTERS, InstanceDescs apontará para uma matriz na memória da GPU de ponteiros D3D12_GPU_VIRTUAL_ADDRESS para descrições de instâncias. A memória apontada deve estar no estado D3D12_RESOURCE_STATE_NON_PIXEL_SHADER_RESOURCE. pGeometryDescs
Tipo: const D3D12_RAYTRACING_GEOMETRY_DESC * Se Type for D3D12_RAYTRACING_ACCELERATION_STRUCTURE_BOTTOM_LEVEL e DescsLayout for D3D12_ELEMENTS_LAYOUT_ARRAY, esse campo será usado e apontará para NumDescs estruturas D3D12_RAYTRACING_GEOMETRY_DESC contíguas na CPU, que descrevem geometrias individuais. Se Type não for D3D12_RAYTRACING_ACCELERATION_STRUCTURE_BOTTOM_LEVEL ou DescsLayout não for D3D12_ELEMENTS_LAYOUT_ARRAY, esse parâmetro não será usado. ppGeometryDescs
Tipo: const D3D12_RAYTRACING_GEOMETRY_DESC *const * Se Type for D3D12_RAYTRACING_ACCELERATION_STRUCTURE_BOTTOM_LEVEL e DescsLayout for D3D12_ELEMENTS_LAYOUT_ARRAY_OF_POINTERS, esse campo será usado e apontará para uma matriz de NumDescs ponteiros para estruturas D3D12_RAYTRACING_GEOMETRY_DESC na CPU, que descrevem geometrias individuais.
Comentários
Quando usado com GetRaytracingAccelerationStructurePrebuildInfo, que na verdade realiza uma criação, qualquer parâmetro referenciado por meio de D3D12_GPU_VIRTUAL_ADDRESS (um endereço na memória da GPU), como InstanceDescs, não será acessado pela operação. Portanto, essa memória ainda não precisa ser inicializada nem estar em um estado de recurso específico. A operação pode verificar se os endereços de GPU são nulos ou não, mesmo que os ponteiros não sejam desreferenciados.Requisitos
Cabeçalho: d3d12_xs.hBiblioteca: d3d12_xs.lib
Plataformas com suporte: consoles XBOX Series
