Sintaxis
Miembros
TypeTipo: D3D12_RAYTRACING_ACCELERATION_STRUCTURE_TYPE El tipo de estructura de aceleración que se va a compilar. Flags
Tipo: D3D12_RAYTRACING_ACCELERATION_STRUCTURE_BUILD_FLAGS Las marcas de compilación. NumDescs
Tipo: UINT Si Type es D3D12_RAYTRACING_ACCELERATION_STRUCTURE_TOP_LEVEL, este valor es el número de instancias, dispuestas según DescsLayout. Si Type es D3D12_RAYTRACING_ACCELERATION_STRUCTURE_BOTTOM_LEVEL, este valor es el número de elementos a los que hacen referencia pGeometryDescs o ppGeometryDescs. El campo que se usa depende de DescsLayout. DescsLayout
Tipo: D3D12_ELEMENTS_LAYOUT Cómo se especifican las descripciones de geometría: una matriz de descripciones o una matriz de punteros a descripciones. InstanceDescs
Tipo: D3D12_GPU_VIRTUAL_ADDRESS Si Type es D3D12_RAYTRACING_ACCELERATION_STRUCTURE_TOP_LEVEL, hace referencia a NumDescs estructuras D3D12_RAYTRACING_INSTANCE_DESC en la memoria de la GPU que describen instancias. Cada instancia debe estar alineada a 16 bytes, definido como D3D12_RAYTRACING_INSTANCE_DESC_BYTE_ALIGNMENT. Si Type no es D3D12_RAYTRACING_ACCELERATION_STRUCTURE_TOP_LEVEL, este parámetro no se usa. Si DescLayout es D3D12_ELEMENTS_LAYOUT_ARRAY, InstanceDescs apunta a una matriz de descripciones de instancia en la memoria de la GPU. Si DescLayout es D3D12_ELEMENTS_LAYOUT_ARRAY_OF_POINTERS, InstanceDescs apunta a una matriz en la memoria de la GPU de punteros D3D12_GPU_VIRTUAL_ADDRESS a descripciones de instancia. La memoria a la que se apunta debe estar en el estado D3D12_RESOURCE_STATE_NON_PIXEL_SHADER_RESOURCE. pGeometryDescs
Tipo: const D3D12_RAYTRACING_GEOMETRY_DESC * Si Type es D3D12_RAYTRACING_ACCELERATION_STRUCTURE_BOTTOM_LEVEL y DescsLayout es D3D12_ELEMENTS_LAYOUT_ARRAY, este campo se usa y apunta a NumDescs estructuras D3D12_RAYTRACING_GEOMETRY_DESC contiguas en la CPU, que describen geometrías individuales. Si Type no es D3D12_RAYTRACING_ACCELERATION_STRUCTURE_BOTTOM_LEVEL o DescsLayout no es D3D12_ELEMENTS_LAYOUT_ARRAY, este parámetro no se usa. ppGeometryDescs
Tipo: const D3D12_RAYTRACING_GEOMETRY_DESC *const * Si Type es D3D12_RAYTRACING_ACCELERATION_STRUCTURE_BOTTOM_LEVEL y DescsLayout es D3D12_ELEMENTS_LAYOUT_ARRAY_OF_POINTERS, este campo se usa y apunta a una matriz de NumDescs punteros a estructuras D3D12_RAYTRACING_GEOMETRY_DESC en la CPU, que describen geometrías individuales.
Comentarios
Cuando se usa con GetRaytracingAccelerationStructurePrebuildInfo, que realmente realiza una compilación, la operación no accederá a ningún parámetro al que se haga referencia mediante D3D12_GPU_VIRTUAL_ADDRESS (una dirección en la memoria de la GPU), como InstanceDescs. Por lo tanto, esta memoria todavía no necesita estar inicializada ni encontrarse en un estado de recurso concreto. La operación puede inspeccionar si las direcciones de GPU son nulas o no, aunque los punteros no se desreferencien.Requisitos
Encabezado: d3d12_xs.hBiblioteca: d3d12_xs.lib
Plataformas compatibles: consolas XBOX Series
