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

#include <GeometryCollectionISMPoolComponent.h>

Classes

struct  FInstanceGroupRange
 

Public Types

using FInstanceGroupId = int32
 

Public Member Functions

void Reset ()
 
bool IsEmpty () const
 
int32 GetMaxInstanceIndex () const
 
FInstanceGroupId AddGroup (int32 Count)
 
void RemoveGroup (FInstanceGroupId GroupId)
 

Public Attributes

int32 TotalInstanceCount = 0
 
int32 TotalFreeInstanceCount = 0
 
TArray< FInstanceGroupRangeGroupRanges
 
TArray< FInstanceGroupIdFreeList
 

Detailed Description

Structure containing a set of allocated instance ranges in an FGeometryCollectionISM which is the manager for a single ISM component. The instance ranges don't change once allocated, and aren't the same as the actual render indices in the ISM. The reason that we don't store the the actual ISM render indices is that ISM component is free to reorder its instances whenever it likes.

Member Typedef Documentation

◆ FInstanceGroupId

Member Function Documentation

◆ AddGroup()

FInstanceGroupId FInstanceGroups::AddGroup ( int32  Count)
inline

Add a new group range.

◆ GetMaxInstanceIndex()

int32 FInstanceGroups::GetMaxInstanceIndex ( ) const
inline

Returns the maximum instance index that we have allocated in a group.

◆ IsEmpty()

bool FInstanceGroups::IsEmpty ( ) const
inline

Returns true if no groups ranges are in use.

◆ RemoveGroup()

void FInstanceGroups::RemoveGroup ( FInstanceGroupId  GroupId)
inline

Remove a group range.

◆ Reset()

void FInstanceGroups::Reset ( )
inline

Reset all contents.

Member Data Documentation

◆ FreeList

TArray<FInstanceGroupId> FInstanceGroups::FreeList

◆ GroupRanges

TArray<FInstanceGroupRange> FInstanceGroups::GroupRanges

◆ TotalFreeInstanceCount

int32 FInstanceGroups::TotalFreeInstanceCount = 0

◆ TotalInstanceCount

int32 FInstanceGroups::TotalInstanceCount = 0

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