180 static bool ShouldUsePrecomputed();
184 template<EChangeFlag Flag>
185 inline void MarkChangeHelper(
int32 InstanceIndex);
186 template<EChangeFlag Flag>
189 void MarkComponentRenderInstancesDirty();
191 bool HasIdentityMapping()
const;
209 int32 IdSearchStartIndex = 0;
214 uint8 bNumCustomDataChanged : 1;
215 uint8 bBakedLightingDataChanged : 1;
216 uint8 bTransformChangedAllInstances : 1;
220 uint8 bPrimitiveTransformChanged : 1;
221 uint8 bAnyInstanceChange : 1;
223 uint8 bComponentMarkedDirty : 1;
224 uint8 bEnableTracking : 1;
225 uint8 bFirstFlush : 1;
234 PrecomputedOptimizationDataPtr PrecomputedOptimizationData;
240 int32 NumCustomDataFloats = 0;
241 float AbsMaxDisplacement = 0.0f;
OODEFFUNC typedef void(OODLE_CALLBACK t_fp_OodleCore_Plugin_Free)(void *ptr)
@ BeginCacheForCookedPlatformData
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
Definition Archive.h:1208
TSharedPtr< const FISMPrecomputedSpatialHashData, ESPMode::ThreadSafe > FISMPrecomputedSpatialHashDataPtr
Definition ISMInstanceDataSceneProxy.h:71
Definition ISMInstanceUpdateChangeSet.h:13
Definition InstanceAttributeTracker.h:67
EFlag
Definition InstanceAttributeTracker.h:79
Definition InstanceDataSceneProxy.h:15
Definition ISMInstanceDataManager.h:45
bool FlushChanges(FInstanceUpdateComponentDesc &&ComponentData, bool bNewPrimitiveProxy)
Definition ISMInstanceDataManager.cpp:437
void ClearChangeTracking()
Definition ISMInstanceDataManager.cpp:742
void BakedLightingDataChanged(int32 InstanceIndex)
Definition ISMInstanceDataManager.cpp:285
void RemoveAtSwap(int32 InstanceIndex)
Definition ISMInstanceDataManager.cpp:153
ENGINE_API bool HasAnyInstanceChanges() const
Definition ISMInstanceDataManager.cpp:344
EMode GetMode() const
Definition ISMInstanceDataManager.h:73
const TSharedPtr< FISMCInstanceDataSceneProxy, ESPMode::ThreadSafe > & GetProxy() const
Definition ISMInstanceDataManager.h:141
void ValidateMapping() const
Definition ISMInstanceDataManager.h:147
void TransformChanged(int32 InstanceIndex)
Definition ISMInstanceDataManager.cpp:255
int32 GetMaxInstanceIndex() const
Definition ISMInstanceDataManager.cpp:769
ENGINE_API void MarkForRebuildFromLegacy(TUniquePtr< FStaticMeshInstanceData > &&LegacyInstanceData, const TArray< int32 > &InstanceReorderTable, const TArray< TRefCountPtr< HHitProxy > > &HitProxies)
Definition ISMInstanceDataManager.cpp:927
ENGINE_API SIZE_T GetAllocatedSize() const
Definition ISMInstanceDataManager.cpp:966
void BakedLightingDataChangedAll()
Definition ISMInstanceDataManager.cpp:292
void TransformsChangedAll()
Definition ISMInstanceDataManager.cpp:267
void CreateExplicitIdentityMapping()
Definition ISMInstanceDataManager.cpp:774
int32 GetMaxInstanceId() const
Definition ISMInstanceDataManager.cpp:764
ENGINE_API TSharedPtr< FISMCInstanceDataSceneProxy, ESPMode::ThreadSafe > GetOrCreateProxy(ERHIFeatureLevel::Type InFeatureLevel)
Definition ISMInstanceDataManager.cpp:855
ETrackingState
Definition ISMInstanceDataManager.h:53
ETrackingState GetState() const
Definition ISMInstanceDataManager.h:138
void ResetComponentDirtyTracking()
Definition ISMInstanceDataManager.h:160
void RemoveAt(int32 InstanceIndex)
Definition ISMInstanceDataManager.cpp:202
void CustomDataChanged(int32 InstanceIndex)
Definition ISMInstanceDataManager.cpp:279
EMode
Definition ISMInstanceDataManager.h:61
void NumCustomDataChanged()
Definition ISMInstanceDataManager.cpp:304
void PrimitiveTransformChanged()
Definition ISMInstanceDataManager.cpp:332
bool HasAnyChanges() const
Definition ISMInstanceDataManager.h:114
void ReadCookedRenderData(FArchive &Ar)
Definition ISMInstanceDataManager.cpp:1151
ENGINE_API void SetMode(EMode InMode)
Definition ISMInstanceDataManager.cpp:66
void ClearIdTracking(int32 InNumInstances)
Definition ISMInstanceDataManager.cpp:724
void OnRegister(int32 InNumInstances)
Definition ISMInstanceDataManager.cpp:972
Definition PrimitiveSceneProxy.h:296
Definition HitProxies.h:135
Definition AndroidPlatformMisc.h:14
Definition RefCounting.h:454
Definition SharedPointer.h:692
Definition StridedView.h:44
Definition UniquePtr.h:107
Type
Definition EngineTypes.h:3789
@ Movable
Definition EngineTypes.h:3812
Type
Definition RHIFeatureLevel.h:20
Definition ISMInstanceDataSceneProxy.h:22
Definition ISMInstanceDataManager.h:17
FInstanceDataFlags Flags
Definition ISMInstanceDataManager.h:21
int32 NumSourceInstances
Definition ISMInstanceDataManager.h:27
FMatrix PrimitiveLocalToWorld
Definition ISMInstanceDataManager.h:18
TFunction< void(FISMInstanceUpdateChangeSet &ChangeSet)> BuildChangeSet
Definition ISMInstanceDataManager.h:33
FRenderBounds StaticMeshBounds
Definition ISMInstanceDataManager.h:20
int32 NumCustomDataFloats
Definition ISMInstanceDataManager.h:29
FPrimitiveMaterialPropertyDescriptor PrimitiveMaterialDesc
Definition ISMInstanceDataManager.h:22
int32 NumProxyInstances
Definition ISMInstanceDataManager.h:25
EComponentMobility::Type ComponentMobility
Definition ISMInstanceDataManager.h:19
Definition InstanceDataTypes.h:19
Definition SceneTypes.h:237
Definition RenderTransform.h:272
Definition WeakObjectPtrTemplates.h:25
Definition ISMInstanceDataManager.cpp:357
Definition InstanceDataTypes.h:36