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

#include <InstanceDataSceneProxy.h>

+ Inheritance diagram for FSingleInstanceDataBuffers:

Public Member Functions

ENGINE_API FSingleInstanceDataBuffers ()
 
ENGINE_API void UpdateDefaultInstance (const FMatrix &PrimitiveLocalToWorld, const FRenderBounds LocalBounds)
 
- Public Member Functions inherited from FInstanceSceneDataBuffers
ENGINE_API FInstanceSceneDataBuffers ()
 
ENGINE_API FInstanceSceneDataBuffers (bool InbInstanceDataIsGPUOnly)
 
 FInstanceSceneDataBuffers (FInstanceSceneDataBuffers &&Other)=default
 
const FInstanceDataFlagsGetFlags () const
 
int32 GetNumInstances (FAccessTag AccessTag=FAccessTag()) const
 
int32 GetNumCustomDataFloats (FAccessTag AccessTag=FAccessTag()) const
 
ENGINE_API uint32 GetPayloadDataStride (FAccessTag AccessTag=FAccessTag()) const
 
ENGINE_API FRenderBounds GetInstanceLocalBounds (int32 InstanceIndex, FAccessTag AccessTag=FAccessTag()) const
 
ENGINE_API FRenderBounds GetInstancePrimitiveRelativeBounds (int32 InstanceIndex, FAccessTag AccessTag=FAccessTag()) const
 
ENGINE_API FBoxSphereBounds GetInstanceWorldBounds (int32 InstanceIndex, FAccessTag AccessTag=FAccessTag()) const
 
ENGINE_API FMatrix GetInstanceToWorld (int32 InstanceIndex, FAccessTag AccessTag=FAccessTag()) const
 
bool IsInstanceDataGPUOnly (FAccessTag AccessTag=FAccessTag()) const
 
FRenderTransform GetInstanceToPrimitiveRelative (int32 InstanceIndex, FAccessTag AccessTag=FAccessTag()) const
 
FRenderTransform GetPrevInstanceToPrimitiveRelative (int32 InstanceIndex, FAccessTag AccessTag=FAccessTag()) const
 
const FVectorGetPrimitiveWorldSpaceOffset (FAccessTag AccessTag=FAccessTag()) const
 
bool GetInstanceVisible (int32 InstanceIndex, FAccessTag AccessTag=FAccessTag()) const
 
const FRenderTransformGetPrimitiveToRelativeWorld (FAccessTag AccessTag=FAccessTag()) const
 
ENGINE_API FRenderTransform ComputeInstanceToPrimitiveRelative (const FMatrix44f &InstanceToPrimitive, FAccessTag AccessTag=FAccessTag())
 
ENGINE_API void SetPrimitiveLocalToWorld (const FMatrix &PrimitiveLocalToWorld, FAccessTag AccessTag=FAccessTag())
 
ENGINE_API FInstanceDataBufferHeader GetHeader (FAccessTag AccessTag=FAccessTag()) const
 
ENGINE_API void ValidateData () const
 
FWriteView BeginWriteAccess (FAccessTag AccessTag)
 
void EndWriteAccess (FAccessTag AccessTag)
 
FReadView GetReadView (FAccessTag AccessTag=FAccessTag()) const
 
ENGINE_API void SetImmutable (FInstanceSceneDataImmutable &&ImmutableData, FAccessTag AccessTag)
 
FInstanceSceneDataImmutablePtr GetImmutable () const
 

Additional Inherited Members

- Static Public Member Functions inherited from FInstanceSceneDataBuffers
static ENGINE_API uint32 CalcPayloadDataStride (FInstanceDataFlags Flags, int32 InNumCustomDataFloats, int32 InNumPayloadExtensionFloat4s)
 
- Protected Member Functions inherited from FInstanceSceneDataBuffers
void ValidateAccess (const FAccessTag &AccessTag) const
 
- Protected Attributes inherited from FInstanceSceneDataBuffers
FRenderTransform PrimitiveToRelativeWorld
 
FVector PrimitiveWorldSpaceOffset
 
TArray< FRenderBoundsInstanceLocalBounds
 
TArray< floatInstanceCustomData
 
TArray< floatInstanceRandomIDs
 
TArray< FVector4fInstanceLightShadowUVBias
 
TArray< uint32InstanceSkinningData
 
TArray< uint32InstanceHierarchyOffset
 
TArray< FVector4fInstancePayloadExtension
 
TArray< FRenderTransformInstanceToPrimitiveRelative
 
TArray< FRenderTransformPrevInstanceToPrimitiveRelative
 
TBitArray VisibleInstances
 
int32 NumInstancesGPUOnly = 0
 
int32 NumCustomDataFloats = 0
 
FInstanceDataFlags Flags
 
bool bInstanceDataIsGPUOnly: 1 = false
 
FInstanceSceneDataImmutablePtr Immutable
 

Detailed Description

Trivial helper to manage single-instance primitives that can be embedded in the primtive proxy & alias the view to the single data elements.

Constructor & Destructor Documentation

◆ FSingleInstanceDataBuffers()

FSingleInstanceDataBuffers::FSingleInstanceDataBuffers ( )

Member Function Documentation

◆ UpdateDefaultInstance()

void FSingleInstanceDataBuffers::UpdateDefaultInstance ( const FMatrix PrimitiveLocalToWorld,
const FRenderBounds  LocalBounds 
)

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