UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
FMeshBatchDynamicPrimitiveData Struct Reference

#include <MeshBatch.h>

Public Member Functions

void SetPayloadDataFlags (uint16 Flags, bool bValue)
 
void EnableInstanceDynamicData (bool bEnable)
 
void EnableInstanceSkinningData (bool bEnable)
 
void EnableInstanceLocalBounds (bool bEnable)
 
void SetNumInstanceCustomDataFloats (uint32 NumFloats)
 
uint32 GetPayloadFloat4Stride () const
 
void Validate (uint32 NumInstances) const
 

Public Attributes

TConstArrayView< FInstanceSceneDataInstanceSceneData
 
TConstArrayView< FInstanceDynamicDataInstanceDynamicData
 
TConstArrayView< FRenderBoundsInstanceLocalBounds
 
TConstArrayView< floatInstanceCustomData
 
FGPUSceneWriteDelegateRef DataWriterGPU
 
EGPUSceneGPUWritePass DataWriterGPUPass = EGPUSceneGPUWritePass::None
 
uint16 PayloadDataFlags = 0
 
uint32 NumInstanceCustomDataFloats = 0
 

Detailed Description

Dynamic primitive/instance data for a mesh batch element.

NOTES:

  • When applied to a FMeshBatchElement, data provided to the TConstArrayView members are expected to live until the end of the frame on the render thread
  • If DataWriterGPU is bound and the TConstArrayView members are left empty, the delegate is expected to write any missing data, as it will not be uploaded

Member Function Documentation

◆ EnableInstanceDynamicData()

void FMeshBatchDynamicPrimitiveData::EnableInstanceDynamicData ( bool  bEnable)
inline

◆ EnableInstanceLocalBounds()

void FMeshBatchDynamicPrimitiveData::EnableInstanceLocalBounds ( bool  bEnable)
inline

◆ EnableInstanceSkinningData()

void FMeshBatchDynamicPrimitiveData::EnableInstanceSkinningData ( bool  bEnable)
inline

◆ GetPayloadFloat4Stride()

uint32 FMeshBatchDynamicPrimitiveData::GetPayloadFloat4Stride ( ) const
inline

Computes the full float4 stride of the instance's payload data. NOTE: Needs to align with GetInstancePayloadDataOffsets in SceneData.ush

◆ SetNumInstanceCustomDataFloats()

void FMeshBatchDynamicPrimitiveData::SetNumInstanceCustomDataFloats ( uint32  NumFloats)
inline

◆ SetPayloadDataFlags()

void FMeshBatchDynamicPrimitiveData::SetPayloadDataFlags ( uint16  Flags,
bool  bValue 
)
inline

◆ Validate()

void FMeshBatchDynamicPrimitiveData::Validate ( uint32  NumInstances) const
inline

Member Data Documentation

◆ DataWriterGPU

FGPUSceneWriteDelegateRef FMeshBatchDynamicPrimitiveData::DataWriterGPU

◆ DataWriterGPUPass

EGPUSceneGPUWritePass FMeshBatchDynamicPrimitiveData::DataWriterGPUPass = EGPUSceneGPUWritePass::None

◆ InstanceCustomData

TConstArrayView<float> FMeshBatchDynamicPrimitiveData::InstanceCustomData

◆ InstanceDynamicData

TConstArrayView<FInstanceDynamicData> FMeshBatchDynamicPrimitiveData::InstanceDynamicData

◆ InstanceLocalBounds

TConstArrayView<FRenderBounds> FMeshBatchDynamicPrimitiveData::InstanceLocalBounds

◆ InstanceSceneData

TConstArrayView<FInstanceSceneData> FMeshBatchDynamicPrimitiveData::InstanceSceneData

◆ NumInstanceCustomDataFloats

uint32 FMeshBatchDynamicPrimitiveData::NumInstanceCustomDataFloats = 0

◆ PayloadDataFlags

uint16 FMeshBatchDynamicPrimitiveData::PayloadDataFlags = 0

The documentation for this struct was generated from the following file: