Skip to main content
레이트레이싱 가속 구조 빌드 작업의 입력을 정의합니다. 이 구조체는 ID3D12GraphicsCommandList4::BuildRaytracingAccelerationStructureID3D12Device5::GetRaytracingAccelerationStructurePrebuildInfo에서 사용됩니다.

구문

멤버

Type
형식: D3D12_RAYTRACING_ACCELERATION_STRUCTURE_TYPE
빌드할 가속 구조의 형식입니다. Flags
형식: D3D12_RAYTRACING_ACCELERATION_STRUCTURE_BUILD_FLAGS
빌드 플래그입니다. NumDescs
형식: UINT
TypeD3D12_RAYTRACING_ACCELERATION_STRUCTURE_TOP_LEVEL인 경우, 이 값은 DescsLayout에 따라 배치된 인스턴스 수입니다. TypeD3D12_RAYTRACING_ACCELERATION_STRUCTURE_BOTTOM_LEVEL인 경우, 이 값은 pGeometryDescs 또는 ppGeometryDescs가 참조하는 요소 수입니다. 이 필드 중 어느 것을 사용할지는 DescsLayout에 따라 다릅니다. DescsLayout
형식: D3D12_ELEMENTS_LAYOUT
지오메트리 설명이 지정되는 방식으로, 설명의 배열 또는 설명에 대한 포인터의 배열입니다. InstanceDescs
형식: D3D12_GPU_VIRTUAL_ADDRESS
TypeD3D12_RAYTRACING_ACCELERATION_STRUCTURE_TOP_LEVEL인 경우, 이는 인스턴스를 설명하는 GPU 메모리의 NumDescsD3D12_RAYTRACING_INSTANCE_DESC 구조체를 참조합니다. 각 인스턴스는 D3D12_RAYTRACING_INSTANCE_DESC_BYTE_ALIGNMENT로 정의된 16바이트에 정렬되어야 합니다. TypeD3D12_RAYTRACING_ACCELERATION_STRUCTURE_TOP_LEVEL이 아니면 이 매개 변수는 사용되지 않습니다. DescLayoutD3D12_ELEMENTS_LAYOUT_ARRAY인 경우, InstanceDescs는 GPU 메모리의 인스턴스 설명 배열을 가리킵니다. DescLayoutD3D12_ELEMENTS_LAYOUT_ARRAY_OF_POINTERS인 경우, InstanceDescs는 인스턴스 설명에 대한 D3D12_GPU_VIRTUAL_ADDRESS 포인터의 GPU 메모리 배열을 가리킵니다. 가리키는 메모리는 D3D12_RESOURCE_STATE_NON_PIXEL_SHADER_RESOURCE 상태여야 합니다. pGeometryDescs
형식: const D3D12_RAYTRACING_GEOMETRY_DESC *
TypeD3D12_RAYTRACING_ACCELERATION_STRUCTURE_BOTTOM_LEVEL이고 DescsLayoutD3D12_ELEMENTS_LAYOUT_ARRAY인 경우, 이 필드가 사용되며 개별 지오메트리를 설명하는 CPU 상의 NumDescs개의 연속된 D3D12_RAYTRACING_GEOMETRY_DESC 구조체를 가리킵니다. TypeD3D12_RAYTRACING_ACCELERATION_STRUCTURE_BOTTOM_LEVEL이 아니거나 DescsLayoutD3D12_ELEMENTS_LAYOUT_ARRAY가 아닌 경우, 이 매개 변수는 사용되지 않습니다. ppGeometryDescs
형식: const D3D12_RAYTRACING_GEOMETRY_DESC *const *
TypeD3D12_RAYTRACING_ACCELERATION_STRUCTURE_BOTTOM_LEVEL이고 DescsLayoutD3D12_ELEMENTS_LAYOUT_ARRAY_OF_POINTERS인 경우, 이 필드가 사용되며 개별 지오메트리를 설명하는 CPU 상의 D3D12_RAYTRACING_GEOMETRY_DESC 구조체에 대한 NumDescs개의 포인터 배열을 가리킵니다.

설명

빌드를 실제로 수행하는 GetRaytracingAccelerationStructurePrebuildInfo와 함께 사용하는 경우, InstanceDescs와 같이 D3D12_GPU_VIRTUAL_ADDRESS(GPU 메모리의 주소)를 통해 참조되는 매개 변수는 이 작업에서 액세스되지 않습니다. 따라서 이 메모리는 아직 초기화되어 있거나 특정 리소스 상태에 있을 필요가 없습니다. 포인터가 역참조되지는 않지만, GPU 주소가 null인지 여부는 이 작업으로 검사할 수 있습니다.

요구 사항

헤더: d3d12_xs.h
라이브러리: d3d12_xs.lib
지원 플랫폼: XBOX Series 콘솔
마지막 수정일 2026년 8월 24일