Navigation
API > API/Plugins > API/Plugins/InstancedActors
Instanced Actor subsystem used to spawn AInstancedActorsManager's and populate their instance data. It also keeps track of all InstancedActorDatas and can be queried for them
| Name | UInstancedActorsSubsystem |
| Type | class |
| Header File | /Engine/Plugins/Runtime/InstancedActors/Source/InstancedActors/Public/InstancedActorsSubsystem.h |
| Include Path | #include "InstancedActorsSubsystem.h" |
Syntax
UCLASS (MinimalAPI, BlueprintType)
class UInstancedActorsSubsystem : public UTickableWorldSubsystem
Inheritance Hierarchy
- FTickableObjectBase → FTickableGameObject → UTickableWorldSubsystem → UInstancedActorsSubsystem
- UObjectBase → UObjectBaseUtility → UObject → USubsystem → UWorldSubsystem → UTickableWorldSubsystem → UInstancedActorsSubsystem
Constructors
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
UInstancedActorsSubsystem() |
InstancedActorsSubsystem.h |
Structs
| Name | Remarks |
|---|---|
| FNextTickSharedFragment |
Typedefs
| Name | Type | Remarks | Include Path |
|---|---|---|---|
| FManagersHashGridType | THierarchicalHashGrid2D< 3, 4, FInstancedActorsManagerHandle > | InstancedActorsSubsystem.h | |
| FModifierVolumesHashGridType | THierarchicalHashGrid2D< 3, 4, FInstancedActorsModifierVolumeHandle > | InstancedActorsSubsystem.h |
Functions
Public
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
FInstancedActorsManagerHandle AddManager
(
AInstancedActorsManager& Manager |
InstancedActorsSubsystem.h | ||
FInstancedActorsModifierVolumeHandle AddModifierVolume
(
UInstancedActorsModifierVolumeComponent& ModifierVolume |
InstancedActorsSubsystem.h | ||
bool CancelDeferredSpawnEntitiesRequest
(
FInstancedActorsManagerHandle ManagerHandle |
Removes ManagerHandle from PendingManagersToSpawnEntities if present | InstancedActorsSubsystem.h | |
virtual FInstancedActorsVisualizationDesc CreateVisualDescriptionFromActor
(
const AActor& ExemplarActor |
InstancedActorsSubsystem.h | ||
bool DoesActorClassHaveRegisteredSettings
(
TSubclassOf< AActor > ActorClass, |
Returns true if ActorClass has a matching FInstancedActorsClassSettingsBase entry in UInstancedActorsProjectSettings::ActorClassSettingsRegistryType data registry. | InstancedActorsSubsystem.h | |
bool ExecutePendingDeferredSpawnEntitiesRequests
(
double StopAfterSeconds |
Calls AInstancedActorsManager::InitializeModifyAndSpawnEntities for all pending managers in PendingManagersToSpawnEntities added via RequestDeferredSpawnEntities. | InstancedActorsSubsystem.h | |
void ForEachInstance
(
const FBox& QueryBounds, |
InstancedActorsSubsystem.h | ||
void ForEachManager
(
const FBox& QueryBounds, |
InstancedActorsSubsystem.h | ||
void ForEachModifierVolume
(
const FBox& QueryBounds, |
InstancedActorsSubsystem.h | ||
TSubclassOf< AInstancedActorsManager > GetInstancedActorsManagerClass() |
InstancedActorsSubsystem.h | ||
FSharedStruct GetOrCompileSettingsForActorClass
(
TSubclassOf< AActor > ActorClass |
Compiles and caches finalized settings for ActorClass based off FInstancedActorsClassSettingsBase found in UInstancedActorsProjectSettings::ActorClassSettingsRegistryType data registry, for ActorClass and it's inherited super classes. | InstancedActorsSubsystem.h | |
TSharedRef< UE::InstancedActors::FExemplarActorData > GetOrCreateExemplarActor
(
TSubclassOf< AActor > ActorClass |
Retrieves existing or spawns a new ActorClass for introspecting exemplary instance data. | InstancedActorsSubsystem.h | |
TArray< UInstancedActorsSubsystem::FNextTickSharedFragment > & GetTickableSharedFragments() |
InstancedActorsSubsystem.h | ||
bool HasInstancesOfClass
(
const FBox& QueryBounds, |
Checks whether there are any instanced actors representing ActorClass or its subclasses inside QueryBounds. | InstancedActorsSubsystem.h | |
bool HasPendingDeferredSpawnEntitiesRequests() |
Return true if any deferred spawn entities requests are pending execution by the next ExecutePendingDeferredSpawnEntitiesRequests | InstancedActorsSubsystem.h | |
FInstancedActorsInstanceHandle InstanceActor
(
TSubclassOf< AActor > ActorClass, |
Adds an instance of ActorClass at InstanceTransform location by spawning or reusing a AInstancedActorsManager at InstanceTransform's grid cell location. | InstancedActorsSubsystem.h | |
FInstancedActorsInstanceHandle InstanceActor
(
TSubclassOf< AActor > ActorClass, |
Adds an instance of ActorClass at InstanceTransform location by spawning or reusing a AInstancedActorsManager at InstanceTransform's grid cell location. | InstancedActorsSubsystem.h |
|
void MarkInstanceRepresentationDirty
(
FInstancedActorsInstanceHandle InstanceHandle |
Adds InstanceHandle to a list of pending instances that require an explicit representation update e.g: to remove/add ISMCs when a replicated actor is spawned / despawned. | InstancedActorsSubsystem.h | |
virtual void ModifyVisualDescriptionForActor
(
const TNotNull< AActor* > ExemplarActor, |
Called when an additional/alternate VisualizationDesc is registered. | InstancedActorsSubsystem.h | |
void PopAllDirtyRepresentationInstances
(
TArray< FInstancedActorsInstanceHandle >& OutInstances |
Copies the current list of instances requiring explicit representation updates (added via MarkInstanceRepresentationDirty) to OutInstances and clears the internal list. | InstancedActorsSubsystem.h | |
bool RemoveActorInstance
(
const FInstancedActorsInstanceHandle& InstanceHandle, |
Removes all instance data for InstanceHandle. | InstancedActorsSubsystem.h |
|
void RemoveManager
(
FInstancedActorsManagerHandle ManagerHandle |
InstancedActorsSubsystem.h | ||
void RemoveModifierVolume
(
FInstancedActorsModifierVolumeHandle ModifierVolumeHandle |
InstancedActorsSubsystem.h | ||
void RequestDeferredSpawnEntities
(
FInstancedActorsManagerHandle ManagerHandle |
Adds ManagerHandle to PendingManagersToSpawnEntities for later processing in Tick -> ExecutePendingDeferredSpawnEntitiesRequests | InstancedActorsSubsystem.h | |
void UnregisterExemplarActorClass
(
TSubclassOf< AActor > ActorClass |
Removes exemplar actor class from the map | InstancedActorsSubsystem.h | |
void UpdateAndResetTickTime
(
TConstStructView< FInstancedActorsDataSharedFragment > InstancedActorsDataSharedFragment |
InstancedActorsSubsystem.h |
Overridden from USubsystem
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
virtual void Deinitialize() |
InstancedActorsSubsystem.h | ||
virtual void Initialize
(
FSubsystemCollectionBase& Collection |
InstancedActorsSubsystem.h | ||
virtual bool ShouldCreateSubsystem
(
UObject* Outer |
InstancedActorsSubsystem.h |
Overridden from FTickableObjectBase
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
virtual TStatId GetStatId() |
InstancedActorsSubsystem.h | ||
virtual void Tick
(
float DeltaTime |
InstancedActorsSubsystem.h |
Protected
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
FSharedStruct CompileSettingsForActorClass
(
TSubclassOf< AActor > ActorClass |
Called in GetOrCompileSettingsForActorClass to compile finalized settings for ActorClass based off FInstancedActorsClassSettingsBase found in UInstancedActorsProjectSettings::ActorClassSettingsRegistryType data registry, for ActorClass and it's inherited super classes. | InstancedActorsSubsystem.h | |
void HandleRefreshSettings
(
IConsoleVariable* InCVar |
InstancedActorsSubsystem.h | ||
bool RegisterNewSharedFragmentsInternal
(
TConstStructView< FInstancedActorsDataSharedFragment > InstancedActorsDataSharedFragment |
Fetches all registered FInstancedActorsDataSharedFragment from the EntityManager and adds the missing ones to SortedSharedFragments | InstancedActorsSubsystem.h |
Static
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
static UInstancedActorsSubsystem * Get
(
UObject* WorldContextObject |
InstancedActorsSubsystem.h | ||
static UInstancedActorsSubsystem & GetChecked
(
UObject* WorldContextObject |
InstancedActorsSubsystem.h |