11#include "RayTracingBuiltInResources.h"
13#if METAL_RHI_RAYTRACING
17 uint32 BindlessHitGroupSystemIndexBuffer;
18 uint32 BindlessHitGroupSystemVertexBuffer;
39 void RemoveCompactionRequest();
46 bool bHasPendingCompactionRequests;
49 static constexpr uint32 IndicesPerPrimitive = 3;
57 void SetupHitGroupSystemParameters();
58 void ReleaseBindlessHandles();
98 check(AccelerationStructureBuffer && AccelerationStructureBuffer->AccelerationStructure);
99 return AccelerationStructureBuffer->AccelerationStructure;
#define check(expr)
Definition AssertionMacros.h:314
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
uint64 FRayTracingAccelerationStructureAddress
Definition RHIResources.h:3725
void BuildAccelerationStructure(FVulkanCommandListContext &CommandContext, FVulkanRayTracingScene &Scene, FVulkanBuffer *InScratchBuffer, uint32 InScratchOffset, FVulkanBuffer *InInstanceBuffer, uint32 InInstanceOffset, uint32 NumInstances, EAccelerationStructureBuildMode BuildMode)
Definition VulkanRayTracing.cpp:757
Definition MetalRHIContext.h:48
Definition RHIResources.h:1581
Definition RHICommandList.h:455
FRayTracingAccelerationStructureSize SizeInfo
Definition RHIResources.h:3722
Definition RHIResources.h:3729
FRayTracingGeometryInitializer Initializer
Definition RHIResources.h:3749
virtual FRayTracingAccelerationStructureAddress GetAccelerationStructureAddress(uint64 GPUIndex) const =0
Definition RHIResources.h:3755
virtual const FRayTracingSceneInitializer & GetInitializer() const =0
Definition RHIDefinitions.h:1401
Definition RHIResources.h:3496
Definition RHIResources.h:3669