UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
FVulkanRayTracingGeometry Class Reference

#include <VulkanRayTracing.h>

+ Inheritance diagram for FVulkanRayTracingGeometry:

Public Member Functions

 FVulkanRayTracingGeometry (ENoInit)
 
 FVulkanRayTracingGeometry (FRHICommandListBase &RHICmdList, const FRayTracingGeometryInitializer &Initializer, FVulkanDevice *InDevice)
 
 ~FVulkanRayTracingGeometry ()
 
virtual FRayTracingAccelerationStructureAddress GetAccelerationStructureAddress (uint64 GPUIndex) const final override
 
void Swap (FVulkanRayTracingGeometry &Other)
 
void RemoveCompactionRequest ()
 
void CompactAccelerationStructure (FVulkanCommandBuffer &CmdBuffer, uint64 InSizeAfterCompaction)
 
void SetupHitGroupSystemParameters ()
 
void ReleaseBindlessHandles ()
 
void SetupInlineGeometryParameters (uint32 GeometrySegmentIndex, FVulkanRayTracingGeometryParameters &Parameters) const
 
- Public Member Functions inherited from FRHIRayTracingGeometry
 FRHIRayTracingGeometry ()=default
 
 FRHIRayTracingGeometry (const FRayTracingGeometryInitializer &InInitializer)
 
virtual bool IsCompressed () const
 
const FRayTracingGeometryInitializerGetInitializer () const
 
uint32 GetNumSegments () const
 
- Public Member Functions inherited from FRHIRayTracingAccelerationStructure
 FRHIRayTracingAccelerationStructure ()
 
FRayTracingAccelerationStructureSize GetSizeInfo () const
 
- Public Member Functions inherited from FRHIResource
RHI_API FRHIResource (ERHIResourceType InResourceType)
 
uint32 AddRef () const
 
uint32 Release () const
 
uint32 GetRefCount () const
 
bool IsValid () const
 
void DisableLifetimeExtension ()
 
ERHIResourceType GetType () const
 
FName GetOwnerName () const
 
void SetOwnerName (FName InOwnerName)
 

Public Attributes

VkAccelerationStructureKHR Handle = VK_NULL_HANDLE
 
VkDeviceAddress Address = 0
 
TRefCountPtr< FVulkanBufferAccelerationStructureBuffer
 
bool bHasPendingCompactionRequests = false
 
uint64 AccelerationStructureCompactedSize = 0
 
FVulkanDevice *const Device = nullptr
 
TArray< FVulkanHitGroupSystemParametersHitGroupSystemParameters
 
TArray< FRHIDescriptorHandleHitGroupSystemVertexViews
 
FRHIDescriptorHandle HitGroupSystemIndexView
 
FDebugName DebugName
 
FName OwnerName
 
FRayTracingGeometryInitializer Initializer
 

Static Public Attributes

static constexpr uint32 IndicesPerPrimitive = 3
 

Additional Inherited Members

- Protected Member Functions inherited from FRHIResource
virtual RHI_API ~FRHIResource ()
 
- Protected Attributes inherited from FRHIRayTracingGeometry
FRayTracingGeometryInitializer Initializer = {}
 
- Protected Attributes inherited from FRHIRayTracingAccelerationStructure
FRayTracingAccelerationStructureSize SizeInfo = {}
 

Constructor & Destructor Documentation

◆ FVulkanRayTracingGeometry() [1/2]

FVulkanRayTracingGeometry::FVulkanRayTracingGeometry ( ENoInit  )

◆ FVulkanRayTracingGeometry() [2/2]

FVulkanRayTracingGeometry::FVulkanRayTracingGeometry ( FRHICommandListBase RHICmdList,
const FRayTracingGeometryInitializer Initializer,
FVulkanDevice InDevice 
)

◆ ~FVulkanRayTracingGeometry()

FVulkanRayTracingGeometry::~FVulkanRayTracingGeometry ( )

Member Function Documentation

◆ CompactAccelerationStructure()

void FVulkanRayTracingGeometry::CompactAccelerationStructure ( FVulkanCommandBuffer CmdBuffer,
uint64  InSizeAfterCompaction 
)

◆ GetAccelerationStructureAddress()

virtual FRayTracingAccelerationStructureAddress FVulkanRayTracingGeometry::GetAccelerationStructureAddress ( uint64  GPUIndex) const
inlinefinaloverridevirtual

◆ ReleaseBindlessHandles()

void FVulkanRayTracingGeometry::ReleaseBindlessHandles ( )

◆ RemoveCompactionRequest()

void FVulkanRayTracingGeometry::RemoveCompactionRequest ( )

◆ SetupHitGroupSystemParameters()

void FVulkanRayTracingGeometry::SetupHitGroupSystemParameters ( )

◆ SetupInlineGeometryParameters()

void FVulkanRayTracingGeometry::SetupInlineGeometryParameters ( uint32  GeometrySegmentIndex,
FVulkanRayTracingGeometryParameters Parameters 
) const

◆ Swap()

void FVulkanRayTracingGeometry::Swap ( FVulkanRayTracingGeometry Other)

Member Data Documentation

◆ AccelerationStructureBuffer

TRefCountPtr<FVulkanBuffer> FVulkanRayTracingGeometry::AccelerationStructureBuffer

◆ AccelerationStructureCompactedSize

uint64 FVulkanRayTracingGeometry::AccelerationStructureCompactedSize = 0

◆ Address

VkDeviceAddress FVulkanRayTracingGeometry::Address = 0

◆ bHasPendingCompactionRequests

bool FVulkanRayTracingGeometry::bHasPendingCompactionRequests = false

◆ DebugName

FDebugName FVulkanRayTracingGeometry::DebugName

◆ Device

FVulkanDevice* const FVulkanRayTracingGeometry::Device = nullptr

◆ Handle

VkAccelerationStructureKHR FVulkanRayTracingGeometry::Handle = VK_NULL_HANDLE

◆ HitGroupSystemIndexView

FRHIDescriptorHandle FVulkanRayTracingGeometry::HitGroupSystemIndexView

◆ HitGroupSystemParameters

TArray<FVulkanHitGroupSystemParameters> FVulkanRayTracingGeometry::HitGroupSystemParameters

◆ HitGroupSystemVertexViews

TArray<FRHIDescriptorHandle> FVulkanRayTracingGeometry::HitGroupSystemVertexViews

◆ IndicesPerPrimitive

constexpr uint32 FVulkanRayTracingGeometry::IndicesPerPrimitive = 3
staticconstexpr

◆ Initializer

FRayTracingGeometryInitializer FRHIRayTracingGeometry::Initializer

◆ OwnerName

FName FVulkanRayTracingGeometry::OwnerName

The documentation for this class was generated from the following files: