Navigation
API > API/Runtime > API/Runtime/ISMPool
A pool of ISMs.
| Name | FISMPool |
| Type | struct |
| Header File | /Engine/Source/Runtime/Experimental/ISMPool/Public/ISMPool/ISMPoolComponent.h |
| Include Path | #include "ISMPool/ISMPoolComponent.h" |
Syntax
struct FISMPool
Constructors
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
FISMPool() |
ISMPool/ISMPoolComponent.h |
Typedefs
| Name | Type | Remarks | Include Path |
|---|---|---|---|
| FISMIndex | int32 | ISMPool/ISMPoolComponent.h |
Variables
Public
| Name | Type | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|---|
| bCachedKeepAlive | bool | Cached state of lifecycle cvars from the last Tick() | ISMPool/ISMPoolComponent.h | |
| bCachedRecycle | bool | ISMPool/ISMPoolComponent.h | ||
| bDisableBoundsAndTransformUpdate | bool | Whether we force ISMs to use parent bounds and disable transform updates. | ISMPool/ISMPoolComponent.h | |
| FreeList | TArray< int32 > | Free list of indices in ISMs that are empty. | ISMPool/ISMPoolComponent.h | |
| FreeListISM | TArray< int32 > | Free list of indices in ISMs that have registered ISM components. | ISMPool/ISMPoolComponent.h | |
| ISMs | TArray< FISMPoolISM > | Array of ISM objects. | ISMPool/ISMPoolComponent.h | |
| MeshToISMIndex | TMap< FISMPoolStaticMeshInstance, FISMIndex > | Mapping from mesh description to ISMs array slot. | ISMPool/ISMPoolComponent.h | |
| PrellocationQueue | TSet< FISMPoolStaticMeshInstance > | Set of ISM descriptions that we would like to preallocate. | ISMPool/ISMPoolComponent.h |
Functions
Public
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
FISMPoolMeshInfo AddInstancesToISM
(
UISMPoolComponent* OwningComponent, |
Add instances to ISM and return a mesh info handle. | ISMPool/ISMPoolComponent.h | |
void BatchUpdateInstanceCustomData
(
FISMPoolMeshInfo const& MeshInfo, |
ISMPool/ISMPoolComponent.h | ||
bool BatchUpdateInstancesTransforms
(
FISMPoolMeshInfo& MeshInfo, |
Update ISM contents. | ISMPool/ISMPoolComponent.h | |
void Clear() |
Clear all ISM components and associated data. | ISMPool/ISMPoolComponent.h | |
FISMIndex GetOrAddISM
(
UISMPoolComponent* OwningComponent, |
Find or add an ISM and return an ISM index handle. | ISMPool/ISMPoolComponent.h | |
void ProcessPreallocationRequests
(
UISMPoolComponent* OwningComponent, |
Process the preallocation queue. | ISMPool/ISMPoolComponent.h | |
void RemoveInstancesFromISM
(
const FISMPoolMeshInfo& MeshInfo |
Remove instances from an ISM. | ISMPool/ISMPoolComponent.h | |
void RemoveISM
(
FISMIndex ISMIndex, |
Remove an ISM. | ISMPool/ISMPoolComponent.h | |
void RequestPreallocateMeshInstance
(
const FISMPoolStaticMeshInstance& MeshInstances |
Add an ISM description to the preallocation queue. | ISMPool/ISMPoolComponent.h | |
void Tick
(
UISMPoolComponent* OwningComponent |
Tick maintenance of free list and preallocation. | ISMPool/ISMPoolComponent.h | |
void UpdateAbsoluteTransforms
(
const FTransform& BaseTransform, |
ISMPool/ISMPoolComponent.h |