className: FReplicatedAgentPositionYawData

description: To replicate position and yaw make a member variable of this class in yourFReplicatedAgentBasederived class. In theFReplicatedAgentBasederived class you must also provide an accessor functionFReplicatedAgentPathData& GetReplicatedPositionYawDataMutable().


module: MassReplication

code: typedef [THierarchicalHashGrid2D](API\Runtime\AIModule\THierarchicalHashGrid2D)< 2, 4, [FMassEntityHandle](API\Plugins\MassEntity\FMassEntityHandle) > FReplicationHashGrid2D


className: FReplicationLODLogic

code: struct FReplicationLODLogic : public [FLODDefaultLogic](API\Plugins\MassLOD\FLODDefaultLogic)


code: bool operator== ( [FViewerClientPair](API\Plugins\MassReplication\FViewerClientPair) Other ) const


code: FViewerClientPair ( [FMassViewerHandle](API\Plugins\MassLOD\FMassViewerHandle) InViewerHandle, [FMassClientHandle](API\Plugins\MassReplication\FMassClientHandle) InClientHandle )


className: FViewerClientPair

code: struct FViewerClientPair

ClientHandle

type: FMassClientHand...

ViewerHandle

type: FMassViewerHand...


code: void DebugValidateBubbleOnServer()


code: void DebugValidateBubbleOnClient()


code: void InitializeForWorld ( [UWorld](API\Runtime\Engine\Engine\UWorld) & InWorld )


code: void PostReplicatedAdd ( const [TArrayView](API\Runtime\Core\Containers\TArrayView)< int32 > AddedIndices, int32 FinalSize )


code: void PostReplicatedChange ( const [TArrayView](API\Runtime\Core\Containers\TArrayView)< int32 > ChangedIndices, int32 FinalSize )


description: These functions are processed internally byTClientBubbleHandlerBase

code: void PreReplicatedRemove ( const [TArrayView](API\Runtime\Core\Containers\TArrayView)< int32 > RemovedIndices, int32 FinalSize )


code: void SetClientHandle ( [FMassClientHandle](API\Plugins\MassReplication\FMassClientHandle) InClientHandle )


code: void Tick ( float DeltaTime )


code: void UpdateAgentsToRemove()


className: IClientBubbleHandlerInterface

description: Interface for the bubble handler classes. All the outside interaction with the FastArray logic should be done via the Handler interface or derived classes where possible. These virtual functions are either only called once each per frame on the client for a few struct instances or called at startup / shutdown.

code: class IClientBubbleHandlerInterface


description:
Singleton-like access to this module's interface. This is just for convenience! Beware of calling this during the shutdown phase, though. Your module might have been unloaded already.
Returns singleton instance, loading the module on demand if needed

code: static [IMassReplicationModule](API\Plugins\MassReplication\IMassReplicationModule) & Get()


description:
Checks to see if this module is loaded and ready. It is only valid to callGet()ifIsAvailable()returns true.
True if the module is loaded and ready to use

code: static bool IsAvailable()


className: IMassReplicationModule

description: The public interface to this module. In most cases, this interface is only public to sibling modules within this plugin.

code: class IMassReplicationModule : public [IModuleInterface](API\Runtime\Core\Modules\IModuleInterface)


className: FAddRequirementsForSpawnQueryFunction


className: FSetModifiedEntityDataFunction

code: typedef [TFunctionRef](API\Runtime\Core\GenericPlatform\TFunctionRef)< void(const [FMassEntityView](API\Plugins\MassEntity\FMassEntityView) &, const typename AgentArrayItem::FReplicatedAgentType &)> FSetModifiedEntityDataFunction


className: FSetSpawnedEntityDataFunction

code: typedef [TFunctionRef](API\Runtime\Core\GenericPlatform\TFunctionRef)< void(const [FMassEntityView](API\Plugins\MassEntity\FMassEntityView) &, const typename AgentArrayItem::FReplicatedAgentType &, const int32)> FSetSpawnedEntityDataFunction


code: virtual void InitializeForWorld ( [UWorld](API\Runtime\Engine\Engine\UWorld) & InWorld )


description: This must be called from outside beforeInitializeForWorld()is called. Its called from agent specific bubble implementations

code: virtual void Initialize ( [TArray](API\Runtime\Core\Containers\TArray)< AgentArrayItem > & InAgents, [FMassClientBubbleSerializerBase](API\Plugins\MassReplication\FMassClientBubbleSerializerBase) & InSerializer )


description: Used by PostReplicatedAddHelper

code: void PostReplicatedAddEntitiesHelper ( const [TArrayView](API\Runtime\Core\Containers\TArrayView)< int32 > AddedIndices, [FAddRequirementsForSpawnQueryFunction](API\Plugins\MassReplication\TClientBubbleHandlerBase\FAddRequirements-) AddRequirementsForSpawnQuery, [FCacheFragmentViewsForSpawnQueryFunction](API\Plugins\MassReplication\TClientBubbleHandlerBase\FCacheFragmentVi-) CacheFragmentViewsForSpawnQuery, [FSetSpawnedEntityDataFunction](API\Plugins\MassReplication\TClientBubbleHandlerBase\FSetSpawnedEntit-) SetSpawnedEntityData )


description: Called fromTClientBubbleHandlerBasederived classes in PostReplicatedAd()


description: Called fromTClientBubbleHandlerBasederived classes inPostReplicatedChange()

code: void PostReplicatedChangeHelper ( const [TArrayView](API\Runtime\Core\Containers\TArrayView)< int32 > ChangedIndices, [FSetModifiedEntityDataFunction](API\Plugins\MassReplication\TClientBubbleHandlerBase\FSetModifiedEnti-) SetModifiedEntityData )


code: virtual void PreReplicatedRemove ( const [TArrayView](API\Runtime\Core\Containers\TArrayView)< int32 > RemovedIndices, int32 FinalSize )


code: virtual void SetClientHandle ( [FMassClientHandle](API\Plugins\MassReplication\FMassClientHandle) InClientHandle )


code: virtual void Tick ( float DeltaTime )


className: TClientBubbleHandlerBase

description: Template client bubble functionality. Replication logic for specific agent types is provided by deriving from this class. Interaction with theFMassClientBubbleSerializerBaseand derived classes should be done from this class

code: template<typename AgentArrayItem> class TClientBubbleHandlerBase : public [IClientBubbleHandlerInterface](API\Plugins\MassReplication\IClientBubbleHandlerInterface)

Agents

type: TArray< AgentAr...

description: Pointer to the Agents array in the associated Serializer class

AgentsRemoveDataMap

type: TMap<FMassNetw...

description: Data that is stored when an agent is removed from the bubble, when it times out its safe enough to remove entries in EntityInfoMap The idea is that any out of order adds and subsequent removes for this NetID will normally happen before FAgentRemoveData::TimeLastRemoved, Those that happen after will be on such a bad connection that it doest matter.

Serializer

type: FMassClientBubb...

description: Base class pointer to the associated Serializer class


code: virtual void UpdateAgentsToRemove()


description: When entities are spawned in Mass by the replication system on the client, a spawn query is used to set the data on the spawned entities. The following functions are used to configure the query and then set the position and yaw data.

code: static void AddRequirementsForSpawnQuery ( [FMassEntityQuery](API\Plugins\MassEntity\FMassEntityQuery) & InQuery )


code: void ClearFragmentViewsForSpawnQuery()


description: We could easily add support replicating FReplicatedAgentTransformData here if required.

code: static void SetEntityData ( [FTransformFragment](API\Plugins\MassCommon\FTransformFragment) & TransformFragment, const [FReplicatedAgentPositionYawData](API\Plugins\MassReplication\FReplicatedAgentPositionYawData) & ReplicatedPositionYawData )


code: void CacheFragmentViewsForSpawnQuery ( [FMassExecutionContext](API\Plugins\MassEntity\FMassExecutionContext) & InExecContext )


description: Call this when an Entity that has already been spawned is modified on the client

code: static void SetModifiedEntityData ( const [FMassEntityView](API\Plugins\MassEntity\FMassEntityView) & EntityView, const [FReplicatedAgentPositionYawData](API\Plugins\MassReplication\FReplicatedAgentPositionYawData) & ReplicatedPathData )


code: void SetSpawnedEntityData ( const int32 EntityIdx, const [FReplicatedAgentPositionYawData](API\Plugins\MassReplication\FReplicatedAgentPositionYawData) & ReplicatedPathData ) const


className: GameThreadOnly

code: enum &123; GameThreadOnly = false &125;


className: TMassClientBubbleTransformHandler

description: To replicate Transforms make a member variable of this class in yourTClientBubbleHandlerBasederived class. This class is a friend ofTMassClientBubblePathHandler. It is meant to have access to the protected data declared there.

code: template<typename AgentArrayItem> class TMassClientBubbleTransformHandler

OwnerHandler

type: TClientBubbleHa...

TransformList

type: TArrayView<FTr...


code: TMassClientBubbleTransformHandler ( [TClientBubbleHandlerBase](API\Plugins\MassReplication\TClientBubbleHandlerBase)< AgentArrayItem > & InOwnerHandler )


code: template<> struct TMassExternalSubsystemTraits< UMassReplicationSubsystem >


code: virtual void ConfigureQueries()


code: virtual void Execute ( [FMassEntityManager](API\Plugins\MassEntity\FMassEntityManager) & EntityManager, [FMassExecutionContext](API\Plugins\MassEntity\FMassExecutionContext) & Context )


className: UMassNetworkIDFragmentInitializer

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)() class UMassNetworkIDFragmentInitializer : public [UMassObserverProcessor](API\Plugins\MassEntity\UMassObserverProcessor)

EntityQuery

type: FMassEntityQuer...


code: UMassNetworkIDFragmentInitializer()


code: UMassReplicationGridProcessor()


className: UMassReplicationGridProcessor

description: Processor to update entity in the replication grid used to fetch entities close to clients

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)() class UMassReplicationGridProcessor : public [UMassProcessor](API\Plugins\MassEntity\UMassProcessor)


className: UMassReplicationGridRemoverProcessor

description: No constructors are accessible with public or protected access.


code: virtual void Initialize ( [UObject](API\Runtime\CoreUObject\UObject\UObject) & Owner )


code: void PrepareExecution ( [FMassEntityManager](API\Plugins\MassEntity\FMassEntityManager) & EntityManager )


code: UMassReplicationProcessor()


code: static const [UMassReplicationSettings](API\Plugins\MassReplication\UMassReplicationSettings) * Get()


className: UMassReplicationProcessor

description: Base processor that handles replication and only runs on the server. You should derive from this per entity type (that require different replication processing). It and its derived classes query Mass entity fragments and set those values for replication when appropriate, using the MassClientBubbleHandler.

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)() class UMassReplicationProcessor : public [UMassProcessor](API\Plugins\MassEntity\UMassProcessor)

ReplicationSubsystem

type: TObjectPtr<UMa...


className: UMassReplicationSettings

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)(Config=Mass, defaultconfig, Meta=(DisplayName="Mass Replication")) class UMassReplicationSettings : public [UMassModuleSettings](API\Plugins\MassEntity\UMassModuleSettings)


description: Adds a Client and sets up all the data relevant to the bubble. Where there are multiple viewers for one NetConnection only the parent net connection should be added here

code: void AddClient ( [FMassViewerHandle](API\Plugins\MassLOD\FMassViewerHandle) ViewerHandle, [APlayerController](API\Runtime\Engine\GameFramework\APlayerController) & InController )


className: CurrentNetMassCounter

code: static uint32 CurrentNetMassCounter = 0;


code: void DebugCheckArraysAreInSync()


description: Implement this for deinitialization of instances of the system

code: virtual void Deinitialize()


className: EFindOrAddMassEntityInfo

code: enum EFindOrAddMassEntityInfo { FoundOlderReplicationID, FoundNewerReplicationID, Added, }


description:
Finds or adds anFMassReplicationEntityInfoto the EntityInfoMap for an Entity with NetWorkID. This will update the ReplicationID if an older one is found but it does not change theFMassReplicationEntityInfo::Entitymember. Returns whether we added an entry in EntityInfoMap, or if the found item has an older or newer ReplicationID than that that is passed in. We shouldn't actually get an equal ReplicationID, but in this case we'll treat the existing EntityInfoMap entry as newer.SetEntity()must be called soon after this if the entity handle is !IsSet()
EFindOrAddMassEntityInfo, result of the function call

code: [EFindOrAddMassEntityInfo](API\Plugins\MassReplication\UMassReplicationSubsystem\EFindOrAddMassEntityInfo) FindAndUpdateOrAddMassEntityInfo ( const [FMassNetworkID](API\Plugins\MassCommon\FMassNetworkID) NetworkID, int32 ReplicationID, const [FMassReplicationEntityInfo](API\Plugins\MassReplication\FMassReplicationEntityInfo) *& OutMassEntityInfo )


code: [FMassEntityHandle](API\Plugins\MassEntity\FMassEntityHandle) FindEntity ( const [FMassNetworkID](API\Plugins\MassCommon\FMassNetworkID) NetworkID ) const


code: [FMassReplicationEntityInfo](API\Plugins\MassReplication\FMassReplicationEntityInfo) * FindMassEntityInfoMutable ( const [FMassNetworkID](API\Plugins\MassCommon\FMassNetworkID) NetworkID )


description: FMassBubbleInfoClassHandleHandle to the BubbleInfoClass, this will be an invalid handle if BubbleInfoClass can not be found

code: [FMassBubbleInfoClassHandle](API\Plugins\MassReplication\FMassBubbleInfoClassHandle) GetBubbleInfoClassHandle ( const [TSubclassOf](API\Runtime\CoreUObject\Templates\TSubclassOf)< [AMassClientBubbleInfoBase](API\Plugins\MassReplication\AMassClientBubbleInfoBase) > & BubbleInfoClass ) const


description: Gets the client bubble safely

code: [AMassClientBubbleInfoBase](API\Plugins\MassReplication\AMassClientBubbleInfoBase) * GetClientBubble ( [FMassBubbleInfoClassHandle](API\Plugins\MassReplication\FMassBubbleInfoClassHandle) BubbleClassHandle, [FMassClientHandle](API\Plugins\MassReplication\FMassClientHandle) ClientHandle ) const


description: Get the client bubble. Faster version using check()s

code: [AMassClientBubbleInfoBase](API\Plugins\MassReplication\AMassClientBubbleInfoBase) * GetClientBubbleChecked ( [FMassBubbleInfoClassHandle](API\Plugins\MassReplication\FMassBubbleInfoClassHandle) BubbleClassHandle, [FMassClientHandle](API\Plugins\MassReplication\FMassClientHandle) ClientHandle ) const


description: Gets the client replication info. Faster version using check()s

code: const [FMassClientReplicationInfo](API\Plugins\MassReplication\FMassClientReplicationInfo) & GetClientReplicationInfoChecked ( [FMassClientHandle](API\Plugins\MassReplication\FMassClientHandle) Handle ) const


code: const [TArray](API\Runtime\Core\Containers\TArray)< [FMassClientHandle](API\Plugins\MassReplication\FMassClientHandle) > & GetClientReplicationHandles() const


description: Finds theFMassReplicationEntityInfofor the Entity with NetworkID. NetworkID must be valid and nullptr is returned if we can't find it. Note FMassReplicationEntityInfo::IsSet() may be false, in which case this Entity has been removed from the client simulation (but we are still storing the ReplicationID between Removes and Adds!

code: const [FMassReplicationEntityInfo](API\Plugins\MassReplication\FMassReplicationEntityInfo) * FindMassEntityInfo ( const [FMassNetworkID](API\Plugins\MassCommon\FMassNetworkID) NetworkID ) const


description: Gets the client replication info safely

code: const [FMassClientReplicationInfo](API\Plugins\MassReplication\FMassClientReplicationInfo) * GetClientReplicationInfo ( [FMassClientHandle](API\Plugins\MassReplication\FMassClientHandle) Handle ) const


code: const [TMap](API\Runtime\Core\Containers\TMap)< [FMassNetworkID](API\Plugins\MassCommon\FMassNetworkID), [FMassReplicationEntityInfo](API\Plugins\MassReplication\FMassReplicationEntityInfo) > & GetEntityInfoMap() const


code: const [FReplicationHashGrid2D](API\Plugins\MassReplication\FReplicationHashGrid2D) & GetGrid() const


code: [FMassClientReplicationInfo](API\Plugins\MassReplication\FMassClientReplicationInfo) & GetMutableClientReplicationInfoChecked ( [FMassClientHandle](API\Plugins\MassReplication\FMassClientHandle) Handle )


code: [FMassClientReplicationInfo](API\Plugins\MassReplication\FMassClientReplicationInfo) * GetMutableClientReplicationInfo ( [FMassClientHandle](API\Plugins\MassReplication\FMassClientHandle) Handle )


description: Retrieve network id from Mass handle.

code: [FMassNetworkID](API\Plugins\MassCommon\FMassNetworkID) GetNetIDFromHandle ( const [FMassEntityHandle](API\Plugins\MassEntity\FMassEntityHandle) Handle ) const


description: Gets the client bubble returning the template type. Faster version using check()s

code: template<typename TType> TType * GetTypedClientBubbleChecked ( [FMassBubbleInfoClassHandle](API\Plugins\MassReplication\FMassBubbleInfoClassHandle) BubbleClassHandle, [FMassClientHandle](API\Plugins\MassReplication\FMassClientHandle) ClientHandle ) const


description: Gets the client bubble safely returning the template type

code: template<typename TType> TType * GetTypedClientBubble ( [FMassBubbleInfoClassHandle](API\Plugins\MassReplication\FMassBubbleInfoClassHandle) BubbleClassHandle, [FMassClientHandle](API\Plugins\MassReplication\FMassClientHandle) ClientHandle ) const


code: bool IsBubbleClassHandleValid ( [FMassBubbleInfoClassHandle](API\Plugins\MassReplication\FMassBubbleInfoClassHandle) Handle ) const


code: bool IsValidClientHandle ( [FMassClientHandle](API\Plugins\MassReplication\FMassClientHandle) ClientHandle ) const


description: USubsystemBEGIN.

code: virtual void Initialize ( [FSubsystemCollectionBase](API\Runtime\Engine\Subsystems\FSubsystemCollectionBase) & Collection )


description: Registers BubbleInfoClass with the system. These are created one per client as clients join. This function can be called multiple times with different BubbleInfoClass types (but not the same type), in that case each client will get multiple BubbleInfoClasses. This can be useful for replicating different Entity types in different bubbles, although its also possible to have multipleTClientBubbleHandlerBasederived class instances per BubbleInfoClass. This must not be called after AddClient or SynchronizeClientsAndViewers is calledFMassBubbleInfoClassHandleHandle to the BubbleInfoClass, this will be an invalid handle if its not been created

code: [FMassBubbleInfoClassHandle](API\Plugins\MassReplication\FMassBubbleInfoClassHandle) RegisterBubbleInfoClass ( const [TSubclassOf](API\Runtime\CoreUObject\Templates\TSubclassOf)< [AMassClientBubbleInfoBase](API\Plugins\MassReplication\AMassClientBubbleInfoBase) > & BubbleInfoClass )


description: Removes a Client and removes up all the data relevant to the bubble

code: void RemoveClient ( [FMassClientHandle](API\Plugins\MassReplication\FMassClientHandle) ClientHandle )


code: void RemoveFromEntityInfoMap ( const [FMassNetworkID](API\Plugins\MassCommon\FMassNetworkID) NetworkID )


description: Resets the item with NetworkID in the EntityInfoMap if its currently Set / Valid and its the most recent ReplicationID. In this case theFMassEntityHandlethat was reset is returned. OtherwiseFMassEntityHandle::IsSet()will be false on the returnedFMassEntityHandleMust be called after SetEntity and just before the Entity is removed on the client. This sets the Entity member of the AddToEntityInfoMap item toFMassEntityHandleso it will be not IsSet()

code: [FMassEntityHandle](API\Plugins\MassEntity\FMassEntityHandle) ResetEntityIfValid ( const [FMassNetworkID](API\Plugins\MassCommon\FMassNetworkID) NetworkID, int32 ReplicationID )


description: Must be called immediately after an Entity is added to the simulation and after FindAndUpdateOrAddMassEntityInfo has been called

code: void SetEntity ( const [FMassNetworkID](API\Plugins\MassCommon\FMassNetworkID) NetworkID, const [FMassEntityHandle](API\Plugins\MassEntity\FMassEntityHandle) Entity )


code: void SynchronizeClientsAndViewers()


code: void SynchronizeClientViewers ( const [TArray](API\Runtime\Core\Containers\TArray)< [FViewerInfo](API\Plugins\MassLOD\FViewerInfo) > & Viewers )


description: true if we should shrink the number of handles.

code: bool SynchronizeClients ( const [TArray](API\Runtime\Core\Containers\TArray)< [FViewerInfo](API\Plugins\MassLOD\FViewerInfo) > & Viewers )


className: UMassReplicationSubsystem

description: Manages the creation of NetworkIDs, ClientBubbles and ClientReplicationInfo. NetworkIDs are per replicated Agent Entity and are unique and replicated between server and clients. ClientBubbles relate to the player controller that owns the parentUNetConnectionto a Client machine. ClientReplicationInfo relate to all the player controllers that have a parent or childUNetConnectionto a single Client machine (split screen etc).

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)() class UMassReplicationSubsystem : public [UWorldSubsystem](API\Runtime\Engine\Subsystems\UWorldSubsystem)

BubbleInfoArray

type: TArray<FMassCl...

ClientHandleManager

description: Clients free listFMassClientHandlemanager, handles will to the indices of FMassClientReplicationData::ClientBubbles

ClientsReplicationInfo

description: An Array of each Clients viewer handles (split screen players sharing the same client connections).

ClientToViewerHandleArray

type: TArray<FViewer...

description: A free list array of FViewerClientPairs.

EntityManager

type: TSharedPtr<FMa...

LastSynchronizedFrame

description: Used to make sure the FMassEntityHandle_ClientReplications are synchronized immediately before they are needed

OnMassAgentAdded

description: Broadcast just after a mass agent is added to the client simulation

OnRemovingMassAgent

description: Broadcast just before a mass agent is removed from the client simulation

ReplicationGrid

type: FReplicationHas...

World

type: TObjectPtr<UWo...


code: UMassReplicationSubsystem()


description: Appends items into the entity template required for the trait.

code: virtual void BuildTemplate ( [FMassEntityTemplateBuildContext](API\Plugins\MassSpawner\FMassEntityTemplateBuildContext) & BuildContext, const [UWorld](API\Runtime\Engine\Engine\UWorld) & World ) const


className: UMassReplicationTrait

Params

type: FMassReplicatio...


description: Must override to add specific entity query requirements for replication Usually we add replication processor handler requirements

code: virtual void AddRequirements ( [FMassEntityQuery](API\Plugins\MassEntity\FMassEntityQuery) & EntityQuery )


description: Implemented as straight template callbacks as when profiled this was faster thanTFunctionRef. Its probably easier to pass Lamdas in to these but Functors can also be used as well as TFunctionRefs etc. Its also fairly straight forward to call member functions via some Lamda glue code

code: template<typename AgentArrayItem, typename CacheViewsCallback, typename AddEntityCallback, typename ModifyEntityCallback, typename RemoveEntityCallback> static void CalculateClientReplication ( [FMassExecutionContext](API\Plugins\MassEntity\FMassExecutionContext) & Context, [FMassReplicationContext](API\Plugins\MassReplication\FMassReplicationContext) & ReplicationContext, CacheViewsCallback && CacheViews, AddEntityCallback && AddEntity, ModifyEntityCallback && ModifyEntity, RemoveEntityCallback && RemoveEntity )


description: Must override to process the client replication This methods should call CalculateClientReplication with the appropriate callback implementation

code: virtual void ProcessClientReplication ( [FMassExecutionContext](API\Plugins\MassEntity\FMassExecutionContext) & Context, [FMassReplicationContext](API\Plugins\MassReplication\FMassReplicationContext) & ReplicationContext )


className: UMassReplicatorBase

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)(Abstract) class UMassReplicatorBase : public [UObject](API\Runtime\CoreUObject\UObject\UObject)


description: Visualization component is guaranteed to exist if this class is created

module: MassRepresentation


className: AMassVisualizer

description: Actor holding the mass visual component responsible to handle the representation of the mass agent as the static mesh instances There may be a separate instance of these for different types of Agents (Cars, NPC's etc)

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)(NotPlaceable, Transient) class AMassVisualizer : public [AActor](API\Runtime\Engine\GameFramework\AActor)


className: EMassActorEnabledType

code: enum EMassActorEnabledType { Disabled, LowRes, HighRes, }


className: EMassRepresentationType

code: enum EMassRepresentationType { HighResSpawnedActor, LowResSpawnedActor, StaticMeshInstance, None, }


code: void operator= ( const [FMassInstancedStaticMeshInfoArrayViewAccessDetector](API\Plugins\MassRepresentation\FMassInstancedSt-) & Other )


code: [FMassInstancedStaticMeshInfo](API\Plugins\MassRepresentation\FMassInstancedStaticMeshInfo) & operator[] ( int32 Index ) const


code: FMassInstancedStaticMeshInfoArrayViewAccessDetector ( [FMassInstancedStaticMeshInfoArrayViewAccessDetector](API\Plugins\MassRepresentation\FMassInstancedSt-) && Other )


code: FMassInstancedStaticMeshInfoArrayViewAccessDetector ( const [FMassInstancedStaticMeshInfoArrayViewAccessDetector](API\Plugins\MassRepresentation\FMassInstancedSt-) & Other )


code: FMassInstancedStaticMeshInfoArrayViewAccessDetector ( [TArrayView](API\Runtime\Core\Containers\TArrayView)< [FMassInstancedStaticMeshInfo](API\Plugins\MassRepresentation\FMassInstancedStaticMeshInfo) > InInstancedStaticMeshInfos, const [FRWRecursiveAccessDetector](API\Runtime\Core\Misc\FRWRecursiveAccessDetector) & InAccessDetector )


code: void AddBatchedCustomDataFloats ( const [TArray](API\Runtime\Core\Containers\TArray)< float > & CustomFloats, const float LODSignificance, const float PrevLODSignificance )


description: Adds the specified struct reinterpreted as custom floats to our custom data. Individual members of the specified struct should always fit into a float. When adding any custom data, the custom data must be added for every instance.

code: template<typename InCustomDataType> void AddBatchedCustomData ( InCustomDataType InCustomData, const float LODSignificance, const float PrevLODSignificance, int32 NumFloatsToPad )


code: void AddBatchedTransform ( const int32 InstanceId, const FTransform & Transform, const FTransform & PrevTransform, const float LODSignificance, const float PrevLODSignificance )


code: void AddISMComponent ( [FMassISMCSharedData](API\Plugins\MassRepresentation\FMassISMCSharedData) & SharedData )


description: Destroy the visual instance

code: void ClearVisualInstance ( [FMassISMCSharedDataMap](API\Plugins\MassRepresentation\FMassISMCSharedDataMap) & ISMCSharedData )


code: [FMassLODSignificanceRange](API\Plugins\MassRepresentation\FMassLODSignificanceRange) * GetLODSignificanceRange ( float LODSignificance )


code: const [FStaticMeshInstanceVisualizationDesc](API\Plugins\MassRepresentation\FStaticMeshInstanceVisualization-) & GetDesc() const


code: FTransform GetTransformOffset() const


code: void RemoveInstance ( const int32 InstanceId, const float LODSignificance )


code: void WriteCustomDataFloatsAtStartIndex ( int32 StaticMeshIndex, const [TArrayView](API\Runtime\Core\Containers\TArrayView)< float > & CustomFloats, const float LODSignificance, const int32 FloatsPerInstance, const int32 FloatStartIndex, const float PrevLODSignificance )


code: FMassInstancedStaticMeshInfo()


description: Whether or not to transform the static meshes if not align the mass agent transform

code: bool ShouldUseTransformOffset() const


code: FMassInstancedStaticMeshInfo ( const [FStaticMeshInstanceVisualizationDesc](API\Plugins\MassRepresentation\FStaticMeshInstanceVisualization-) & InDesc )


className: FMassInstancedStaticMeshInfo

Desc

type: FStaticMeshInst...

description: Information about this static mesh which will represent all instances

InstancedStaticMeshComponents

type: TArray<TObject...

description: The component handling these instances

LODSignificanceRanges

type: TArray<FMassLO...


className: FMassInstancedStaticMeshInfoArrayView


code: TConstArrayView< FTransform > GetStaticMeshInstanceTransforms() const


code: TConstArrayView< int32 > GetRemoveInstanceIds() const


code: TConstArrayView< FTransform > GetStaticMeshInstancePrevTransforms() const


code: TConstArrayView< int32 > GetUpdateInstanceIds() const


code: TConstArrayView< float > GetStaticMeshInstanceCustomFloats() const


code: int32 ReleaseReference()


code: void ResetAccumulatedData()


code: int32 StoreReference()


code: void SetISMComponent ( [UInstancedStaticMeshComponent](API\Runtime\Engine\Components\UInstancedStaticMeshComponent) & InISMC )


code: FMassISMCSharedData ( [UInstancedStaticMeshComponent](API\Runtime\Engine\Components\UInstancedStaticMeshComponent) * InISMC )


className: FMassISMCSharedData

code: struct FMassISMCSharedData

FMassLODSignificanceRange

type: friend

ISMC

type: UInstancedStati...

RemoveInstanceIds

type: TArray< int32 >

StaticMeshInstanceCustomFloats

type: TArray< float >

description: Buffer holding current frame custom floats for the static mesh instances, used to batch update the ISMs custom data

StaticMeshInstancePrevTransforms

type: TArray< FTransf...

UpdateInstanceIds

description: Buffer holding current frame transforms for the static mesh instances, used to batch update the transforms

WriteIterator

description: When initially adding to StaticMeshInstanceCustomFloats, can use the size as the write iterator, but on subsequent processors, we need to know where to start writing.


code: void AddBatchedCustomDataFloats ( const [TArray](API\Runtime\Core\Containers\TArray)< float > & CustomFloats, const [TArray](API\Runtime\Core\Containers\TArray)< uint32 > & ExcludeStaticMeshRefs )


className: FMassISMCSharedDataMap

code: typedef [TMap](API\Runtime\Core\Containers\TMap)< uint32, [FMassISMCSharedData](API\Plugins\MassRepresentation\FMassISMCSharedData) > FMassISMCSharedDataMap


code: template<typename InCustomDataType> void AddBatchedCustomData ( InCustomDataType InCustomData, const [TArray](API\Runtime\Core\Containers\TArray)< uint32 > & ExcludeStaticMeshRefs, int32 NumFloatsToPad )


code: void AddBatchedTransform ( const int32 InstanceId, const FTransform & Transform, const FTransform & PrevTransform, const [TArray](API\Runtime\Core\Containers\TArray)< uint32 > & ExcludeStaticMeshRefs )


description: Single-instance version of AddBatchedCustomData when called to add entities (as opposed to modify existing ones).

code: void AddInstance ( const int32 InstanceId, const FTransform & Transform )


code: void RemoveInstance ( const int32 InstanceId )


code: void WriteCustomDataFloatsAtStartIndex ( int32 StaticMeshIndex, const [TArrayView](API\Runtime\Core\Containers\TArrayView)< float > & CustomFloats, const int32 FloatsPerInstance, const int32 StartIndex, const [TArray](API\Runtime\Core\Containers\TArray)< uint32 > & ExcludeStaticMeshRefs )


className: FMassLODSignificanceRange

ISMCSharedDataPtr

type: FMassISMCShared...

MaxSignificance

type: float

MinSignificance

description: LOD Significance range

StaticMeshRefs

type: TArray< uint32 ...

description: The component handling these instances


className: FMassRepresentationLODFragment

code: [USTRUCT](Programming/UnrealArchitecture/Reference/Structs)() struct FMassRepresentationLODFragment : public [FMassFragment](API\Plugins\MassEntity\FMassFragment)

LOD

type: TEnumAsByte<EM...

description: LOD information

LODSignificance

description: Value scaling from 0 to 3, 0 highest LOD we support and 3 being completely off LOD

PrevVisibility

type: EMassVisibility

Visibility

description: Visibility Info


code: void ComputeCachedValues() const


className: FMassRepresentationFragment

code: [USTRUCT](Programming/UnrealArchitecture/Reference/Structs)() struct FMassRepresentationFragment : public [FMassFragment](API\Plugins\MassEntity\FMassFragment)

ActorSpawnRequestHandle

type: FMassActorSpawn...

CurrentRepresentation

type: EMassRepresenta...

PrevTransform

type: FTransform


code: [USTRUCT](Programming/UnrealArchitecture/Reference/Structs)() struct FMassRepresentationSubsystemSharedFragment : public [FMassSharedFragment](API\Plugins\MassEntity\FMassSharedFragment)

RepresentationSubsystem

type: TObjectPtr<UMa...


code: FMassRepresentationParameters()


className: FMassRepresentationParameters

code: [USTRUCT](Programming/UnrealArchitecture/Reference/Structs)() struct FMassRepresentationParameters : public [FMassSharedFragment](API\Plugins\MassEntity\FMassSharedFragment)

type: bool

description: The property is marked like this to ensure it won't show up in UI

bKeepActorExtraFrame

description: When switching to ISM keep the actor an extra frame, helps cover rendering glitches (i.e. occlusion query being one frame late)

bKeepLowResActors

description: If true, LowRes actors will be kept around, disabled, whilst StaticMeshInstance representation is active

bSpreadFirstVisualizationUpdate

description: If true, will spread the first visualization update over the period specified in NotVisibleUpdateRate member

CachedDefaultRepresentationType

description: Default representation when unable to spawn an actor, gets calculated at initialization

LODRepresentation

description: What should be the representation of this entity for each specific LOD

NotVisibleUpdateRate

description: At what rate should the not visible entity be updated in seconds

RepresentationActorManagementClass

type: TSubclassOf<UM...

description: Allow subclasses to override the representation actor management behavior

type: FName

description: World Partition grid name to test collision against, default None will be the main grid


code: bool operator== ( const [FMassStaticMeshInstanceVisualizationMeshDesc](API\Plugins\MassRepresentation\FMassStaticMeshInstanceVisualiza-) & Other ) const


description: Convenience function for setting MinLODSinificance and MaxLODSinificance based on EMassLOD values

code: void SetSignificanceRange ( const [EMassLOD::Type](API\Plugins\MassLOD\EMassLOD__Type) MinLOD, const [EMassLOD::Type](API\Plugins\MassLOD\EMassLOD__Type) MaxLOD )


bCastShadows

description: Controls whether the ISM can cast shadow or not

ISMComponentClass

type: TSubclassOf<UI...

description: InstancedStaticMeshComponent class to use to manage instances described by this struct instance

MaterialOverrides

type: TArray<TObject...

description: Material overrides for the static mesh visual representation.

MaxLODSignificance

description: The maximum exclusive LOD significance to stop using this static mesh

Mesh

type: TObjectPtr<USt...

description: The static mesh visual representation

MinLODSignificance

description: The minimum inclusive LOD significance to start using this static mesh

Mobility

type: EComponentMobil...

description: Controls the mobility of the ISM


className: FMassStaticRepresentationTag

code: [USTRUCT](Programming/UnrealArchitecture/Reference/Structs)() struct FMassStaticRepresentationTag : public [FMassTag](API\Plugins\MassEntity\FMassTag)


code: FMassVisualizationLODSharedFragment ( const [FMassVisualizationLODParameters](API\Plugins\MassRepresentation\FMassVisualizationLODParameters) & LODParams )


className: FMassVisualizationLODParameters

code: [USTRUCT](Programming/UnrealArchitecture/Reference/Structs)() struct FMassVisualizationLODParameters : public [FMassSharedFragment](API\Plugins\MassEntity\FMassSharedFragment)

BaseLODDistance

description: Distances where each LOD becomes relevant

DistanceToFrustum

description: How far away from frustum does this entities are considered visible

DistanceToFrustumHysteresis

description: Once visible how much further than DistanceToFrustum does the entities need to be before being cull again

FilterTag

type: TObjectPtr<USc...

description: Filter these settings with specified tag

LODMaxCount

description: Maximum limit for each entity per LOD


code: FMassVisualizationLODSharedFragment()


className: FMassVisualizationLODSharedFragment

code: [USTRUCT](Programming/UnrealArchitecture/Reference/Structs)() struct FMassVisualizationLODSharedFragment : public [FMassSharedFragment](API\Plugins\MassEntity\FMassSharedFragment)

FilterTag

type: TObjectPtr< con...

LODCalculator

type: TMassLODCalcula...


code: bool operator== ( const [FStaticMeshInstanceVisualizationDesc](API\Plugins\MassRepresentation\FStaticMeshInstanceVisualization-) & Other ) const


className: FStaticMeshInstanceVisualizationDesc

code: [USTRUCT](Programming/UnrealArchitecture/Reference/Structs)() struct FStaticMeshInstanceVisualizationDesc : public [FTableRowBase](API\Runtime\Engine\Engine\FTableRowBase)

bUseTransformOffset

description: Boolean to enable code to transform the static meshes if not align the mass agent transform

Meshes

type: TArray<FMassSt...

description: Mesh descriptions.

TransformOffset

description: Transform to offset the static meshes if not align the mass agent transform


description:
Singleton-like access to this module's interface. This is just for convenience! Beware of calling this during the shutdown phase, though. Your module might have been unloaded already.
Returns singleton instance, loading the module on demand if needed

code: static [IMassRepresentationModule](API\Plugins\MassRepresentation\IMassRepresentationModule) & Get()


description:
Checks to see if this module is loaded and ready. It is only valid to callGet()ifIsAvailable()returns true.
True if the module is loaded and ready to use

code: static bool IsAvailable()


className: IMassRepresentationModule

description: The public interface to this module. In most cases, this interface is only public to sibling modules within this plugin.

code: class IMassRepresentationModule : public [IModuleInterface](API\Runtime\Core\Modules\IModuleInterface)


code: template<> struct TMassExternalSubsystemTraits< UMassRepresentationSubsystem >


className: GameThreadOnly

code: enum &123; GameThreadOnly = true &125;


code: template<> struct TMassSharedFragmentTraits< FMassRepresentationParameters >


code: template<> struct TMassSharedFragmentTraits< FMassRepresentationSubsystemSharedFragment >


code: namespace TMassVisibilityTagForLevel< EMassVisibility { template<> struct TMassVisibilityTagForLevel< EMassVisibility::CanBeSeen > }


code: namespace TMassVisibilityTagForLevel< EMassVisibility { template<> struct TMassVisibilityTagForLevel< EMassVisibility::CulledByDistance > }


code: namespace TMassVisibilityTagForLevel< EMassVisibility { template<> struct TMassVisibilityTagForLevel< EMassVisibility::CulledByFrustum > }


className: TMassVisibilityTagForLevel

code: template<[EMassVisibility](API\Plugins\MassLOD\EMassVisibility) Level> struct TMassVisibilityTagForLevel


code: namespace UE { namespace MassRepresentation { const [UScriptStruct](API\Runtime\CoreUObject\UObject\UScriptStruct) * UE::MassRepresentation::GetTagFromVisibility ( [EMassVisibility](API\Plugins\MassLOD\EMassVisibility) Visibility ) } }


code: namespace UE { namespace MassRepresentation { bool UE::MassRepresentation::IsVisibilityTagSet ( const [FMassExecutionContext](API\Plugins\MassEntity\FMassExecutionContext) & Context, [EMassVisibility](API\Plugins\MassLOD\EMassVisibility) Visibility ) } }


code: namespace UE { namespace MassRepresentation { [EMassVisibility](API\Plugins\MassLOD\EMassVisibility) UE::MassRepresentation::GetVisibilityFromArchetype ( const [FMassExecutionContext](API\Plugins\MassEntity\FMassExecutionContext) & Context ) } }


description: Add multiple instances to this component. The newly added instances are associated with Ids as indicated by InstanceIds.

code: void AddInstancesWithIds ( TConstArrayView< int32 > InstanceIds, TConstArrayView< FTransform > InstanceTransforms, int32 InNumCustomDataFloats, TConstArrayView< float > CustomFloatData, bool bWorldSpace, [TArray](API\Runtime\Core\Containers\TArray)< int32 > * OutAddedIndices )


code: void ApplyVisualChanges ( const [FMassISMCSharedData](API\Plugins\MassRepresentation\FMassISMCSharedData) & SharedData )


description: Remove the instances given as instance Ids. Returns True on success.

code: bool RemoveInstanceWithIds ( TConstArrayView< int32 > InstanceIds )


code: bool RemoveInstanceInternal ( const int32 InstanceIndex, const bool bInstanceAlreadyRemoved )


code: UMassInstancedStaticMeshComponent()


className: UMassInstancedStaticMeshComponent


description: Appends items into the entity template required for the trait.

code: virtual void BuildTemplate ( [FMassEntityTemplateBuildContext](API\Plugins\MassSpawner\FMassEntityTemplateBuildContext) & BuildContext, const [UWorld](API\Runtime\Engine\Engine\UWorld) & World ) const


className: UMassMovableVisualizationTrait


description:
Returns an actor of the template type and setup fragments values from it
the actor spawned

code: virtual [AActor](API\Runtime\Engine\GameFramework\AActor) * GetOrSpawnActor ( [UMassRepresentationSubsystem](API\Plugins\MassRepresentation\UMassRepresentationSubsystem) & RepresentationSubsystem, [FMassEntityManager](API\Plugins\MassEntity\FMassEntityManager) & EntitySubsystem, const [FMassEntityHandle](API\Plugins\MassEntity\FMassEntityHandle) MassAgent, [FMassActorFragment](API\Plugins\MassActors\FMassActorFragment) & ActorInfo, const FTransform & Transform, const int16 TemplateActorIndex, [FMassActorSpawnRequestHandle](API\Plugins\MassActors\FMassActorSpawnRequestHandle) & SpawnRequestHandle, const float Priority ) const


description: Returns the spawn priority from the LOD

code: virtual float GetSpawnPriority ( const [FMassRepresentationLODFragment](API\Plugins\MassRepresentation\FMassRepresentationLODFragment) & Representation ) const


description:
Method that will be bound to a delegate used post-spawn to notify and let the requester configure the actor
The action to take on the spawn request, either keep it there or remove it.

code: virtual [EMassActorSpawnRequestAction](API\Plugins\MassActors\EMassActorSpawnRequestAction) OnPostActorSpawn ( const [FMassActorSpawnRequestHandle](API\Plugins\MassActors\FMassActorSpawnRequestHandle) & SpawnRequestHandle, [FConstStructView](API\Plugins\StructUtils\FConstStructView) SpawnRequest, [FMassEntityManager](API\Plugins\MassEntity\FMassEntityManager) * EntitySubsystem ) const


description: Method that will be bound to a delegate called before the spawning of an actor to let the requester prepare it

code: virtual void OnPreActorSpawn ( const [FMassActorSpawnRequestHandle](API\Plugins\MassActors\FMassActorSpawnRequestHandle) & SpawnRequestHandle, [FConstStructView](API\Plugins\StructUtils\FConstStructView) SpawnRequest, [FMassEntityManager](API\Plugins\MassEntity\FMassEntityManager) * EntitySubsystem ) const


description:
Static methods to Release an actor or cancel its spawning (calls ReleaseAnyActorOrCancelAnySpawning) WARNING: This method will destroy the associated actor in any and by the same fact might also move the entity into a new archetype. So any reference to fragment might become invalid.
True if actor was release or spawning request was canceled

code: static void ReleaseAnyActorOrCancelAnySpawning ( [FMassEntityManager](API\Plugins\MassEntity\FMassEntityManager) & EntityManager, const [FMassEntityHandle](API\Plugins\MassEntity\FMassEntityHandle) MassAgent )


description: Static Release an actor or cancel its spawning WARNING: This method will destroy the associated actor in any and by the same fact might also move the entity into a new archetype. So any reference to fragment might become invalid if you are not within the pipe execution

code: static void ReleaseAnyActorOrCancelAnySpawning ( [UMassRepresentationSubsystem](API\Plugins\MassRepresentation\UMassRepresentationSubsystem) & RepresentationSubsystem, const [FMassEntityHandle](API\Plugins\MassEntity\FMassEntityHandle) MassAgent, [FMassActorFragment](API\Plugins\MassActors\FMassActorFragment) & ActorInfo, [FMassRepresentationFragment](API\Plugins\MassRepresentation\FMassRepresentationFragment) & Representation )


description: Teleports the actor at the specified transform by preserving its velocity and without collision. The destination will be adjusted to fit an existing capsule.

code: virtual void TeleportActor ( const FTransform & Transform, [AActor](API\Runtime\Engine\GameFramework\AActor) & Actor, [FMassCommandBuffer](API\Plugins\MassEntity\FMassCommandBuffer) & CommandBuffer ) const


className: UMassRepresentationActorManagement

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)() class UMassRepresentationActorManagement : public [UObject](API\Runtime\CoreUObject\UObject\UObject)


code: virtual void ConfigureQueries()


code: virtual void Execute ( [FMassEntityManager](API\Plugins\MassEntity\FMassEntityManager) & EntityManager, [FMassExecutionContext](API\Plugins\MassEntity\FMassExecutionContext) & Context )


code: UMassRepresentationFragmentDestructor()


description: Enable/disable a spawned actor for a mass entity

code: virtual void SetActorEnabled ( const [EMassActorEnabledType](API\Plugins\MassRepresentation\EMassActorEnabledType) EnabledType, [AActor](API\Runtime\Engine\GameFramework\AActor) & Actor, const int32 EntityIdx, [FMassCommandBuffer](API\Plugins\MassEntity\FMassCommandBuffer) & CommandBuffer ) const


className: UMassRepresentationFragmentDestructor

EntityQuery

type: FMassEntityQuer...


description: Configure the ownedFMassEntityQueryinstances to express processor's requirements


description:
Release the actor to the subsystem, will only release it the actor or spawn request matches the template actor
if the actor was release or the spawning was canceled.

code: bool ReleaseActorOrCancelSpawning ( [UMassRepresentationSubsystem](API\Plugins\MassRepresentation\UMassRepresentationSubsystem) & RepresentationSubsystem, [UMassActorSubsystem](API\Plugins\MassActors\UMassActorSubsystem) * MassActorSubsystem, const [FMassEntityHandle](API\Plugins\MassEntity\FMassEntityHandle) MassAgent, [FMassActorFragment](API\Plugins\MassActors\FMassActorFragment) & ActorInfo, const int16 TemplateActorIndex, [FMassActorSpawnRequestHandle](API\Plugins\MassActors\FMassActorSpawnRequestHandle) & SpawnRequestHandle, [FMassCommandBuffer](API\Plugins\MassEntity\FMassCommandBuffer) & CommandBuffer, const bool bCancelSpawningOnly )


description: Execution method for this processor


description: Update representation type for each entity, must be called within a ForEachEntityChunk

code: void UpdateRepresentation ( [FMassExecutionContext](API\Plugins\MassEntity\FMassExecutionContext) & Context )


code: UMassRepresentationProcessor()


className: UMassRepresentationProcessor

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)() class UMassRepresentationProcessor : public [UMassProcessor](API\Plugins\MassEntity\UMassProcessor)


description:
Cancel spawning request that is matching the TemplateActorIndex
True if spawning request was canceled

code: bool CancelSpawning ( const [FMassEntityHandle](API\Plugins\MassEntity\FMassEntityHandle) MassAgent, const int16 TemplateActorIndex, [FMassActorSpawnRequestHandle](API\Plugins\MassActors\FMassActorSpawnRequestHandle) & SpawnRequestHandle )


code: bool CancelSpawningInternal ( const int16 TemplateActorIndex, [FMassActorSpawnRequestHandle](API\Plugins\MassActors\FMassActorSpawnRequestHandle) & SpawnRequestHandle )


description: Implement this for deinitialization of instances of the system

code: virtual void Deinitialize()


description: Mark render state of the static mesh instances dirty

code: void DirtyStaticMeshInstances()


description:
Compare if an actor matches the registered template actor
True if actor matches the template

code: bool DoesActorMatchTemplate ( const [AActor](API\Runtime\Engine\GameFramework\AActor) & Actor, const int16 TemplateActorIndex ) const


description:
Get the index of the static mesh visual type, will add a new one if does not exist
The index of the static mesh type

code: int16 FindOrAddStaticMeshDesc ( const [FStaticMeshInstanceVisualizationDesc](API\Plugins\MassRepresentation\FStaticMeshInstanceVisualization-) & Desc )


description:
Store the template actor uniquely and return an index to it
The index of the template actor type

code: int16 FindOrAddTemplateActor ( const [TSubclassOf](API\Runtime\CoreUObject\Templates\TSubclassOf)< [AActor](API\Runtime\Engine\GameFramework\AActor) > & ActorClass )


description: the array of all the static mesh instance component information


description:
Get or spawn an actor from the TemplateActorIndex
The spawned actor from the template actor type if ready

code: [AActor](API\Runtime\Engine\GameFramework\AActor) * GetOrSpawnActorFromTemplate ( const [FMassEntityHandle](API\Plugins\MassEntity\FMassEntityHandle) MassAgent, const FTransform & Transform, const int16 TemplateActorIndex, [FMassActorSpawnRequestHandle](API\Plugins\MassActors\FMassActorSpawnRequestHandle) & SpawnRequestHandle, float Priority, [FMassActorPreSpawnDelegate](API\Plugins\MassActors\FMassActorPreSpawnDelegate) ActorPreSpawnDelegate, [FMassActorPostSpawnDelegate](API\Plugins\MassActors\FMassActorPostSpawnDelegate) ActorPostSpawnDelegate )


code: [TSubclassOf](API\Runtime\CoreUObject\Templates\TSubclassOf)< [AActor](API\Runtime\Engine\GameFramework\AActor) > GetTemplateActorClass ( const int16 TemplateActorIndex )


description: USubsystemBEGIN.

code: virtual void Initialize ( [FSubsystemCollectionBase](API\Runtime\Engine\Subsystems\FSubsystemCollectionBase) & Collection )


code: bool IsCollisionLoaded ( const [FName](API\Runtime\Core\UObject\FName) TargetGrid, const FTransform & Transform ) const


code: void OnMassAgentComponentEntityAssociated ( const [UMassAgentComponent](API\Plugins\MassActors\UMassAgentComponent) & AgentComponent )


code: void OnMassAgentComponentEntityDetaching ( const [UMassAgentComponent](API\Plugins\MassActors\UMassAgentComponent) & AgentComponent )


description: Needed for batching the update of static mesh transform

code: void OnProcessingPhaseStarted ( const float DeltaSeconds, const [EMassProcessingPhase](API\Plugins\MassEntity\EMassProcessingPhase) Phase ) const


description:
Release an actor or cancel its spawning if it is matching the TemplateActorIndex
True if actor was released or spawning request was canceled

code: bool ReleaseTemplateActorOrCancelSpawning ( const [FMassEntityHandle](API\Plugins\MassEntity\FMassEntityHandle) MassAgent, const int16 TemplateActorIndex, [AActor](API\Runtime\Engine\GameFramework\AActor) * ActorToRelease, [FMassActorSpawnRequestHandle](API\Plugins\MassActors\FMassActorSpawnRequestHandle) & SpawnRequestHandle )


description: Release all references to static meshes and template actors Use with caution, all entities using this representation subsystem must be destroy otherwise they will point to invalid resources

code: void ReleaseAllResources()


code: bool ReleaseTemplateActorInternal ( const int16 TemplateActorIndex, [AActor](API\Runtime\Engine\GameFramework\AActor) * ActorToRelease, bool bImmediate )


className: UMassRepresentationSubsystem

description: Subsystem responsible for all visual of mass agents, will handle actors spawning and static mesh instances

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)() class UMassRepresentationSubsystem : public [UWorldSubsystem](API\Runtime\Engine\Subsystems\UWorldSubsystem)

EntityManager

type: TSharedPtr<FMa...

HandledMassAgents

type: TMap<FMassEnti...

description: Keeping track of all the mass agent this subsystem is responsible for spawning actors

RetryMovedDistanceSq

type: float

description: The time to wait before retrying a to spawn actor that failed

RetryTimeInterval

description: The distance a failed spawned actor needs to move before we retry

TemplateActors

type: TArray<TSubcla...

description: The array of all the template actors

TemplateActorsMTAccessDetector

type: FRWAccessDetect...

VisualizationComponent

description: The component that handles all the static mesh instances

Visualizer

type: TObjectPtr<AMa...

description: The actor owning the above visualization component

WorldPartitionSubsystem

type: TObjectPtr<UWo...


description:
Release an actor that is matching the TemplateActorIndex
True if actor was released

code: bool ReleaseTemplateActor ( const [FMassEntityHandle](API\Plugins\MassEntity\FMassEntityHandle) MassAgent, const int16 TemplateActorIndex, [AActor](API\Runtime\Engine\GameFramework\AActor) * ActorToRelease, bool bImmediate )


code: virtual void ConfigureQueries()


code: virtual void Execute ( [FMassEntityManager](API\Plugins\MassEntity\FMassEntityManager) & EntityManager, [FMassExecutionContext](API\Plugins\MassEntity\FMassExecutionContext) & Context )


description: This class is responsible for cleaning up ISM instances visualizing stationary entities


description: Called when a property on this object has been modified externally

code: virtual void PostEditChangeProperty ( struct [FPropertyChangedEvent](API\Runtime\CoreUObject\UObject\FPropertyChangedEvent) & PropertyChangedEvent )


description: Appends items into the entity template required for the trait.

code: virtual void BuildTemplate ( [FMassEntityTemplateBuildContext](API\Plugins\MassSpawner\FMassEntityTemplateBuildContext) & BuildContext, const [UWorld](API\Runtime\Engine\Engine\UWorld) & World ) const


code: UMassStationaryVisualizationTrait ( const [FObjectInitializer](API\Runtime\CoreUObject\UObject\FObjectInitializer) & ObjectInitializer )


className: UMassStationaryVisualizationTrait


description: Configure the ownedFMassEntityQueryinstances to express processor's requirements


description: Execution method for this processor


code: static void UpdateISMTransform ( int32 EntityId, [FMassInstancedStaticMeshInfo](API\Plugins\MassRepresentation\FMassInstancedStaticMeshInfo) & ISMInfo, const FTransform & Transform, const FTransform & PrevTransform, const float LODSignificance, const float PrevLODSignificance )


code: UMassUpdateISMProcessor()


className: UMassUpdateISMProcessor

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)() class UMassUpdateISMProcessor : public [UMassProcessor](API\Plugins\MassEntity\UMassProcessor)


description: Forces Off LOD on all calculation

code: void ForceOffLOD ( bool bForce )


code: UMassVisualizationLODProcessor()


className: UMassVisualizationLODProcessor

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)() class UMassVisualizationLODProcessor : public [UMassProcessor](API\Plugins\MassEntity\UMassProcessor)

bForceOFFLOD

type: bool


description:
Updates chunk visibility info for later chunk logic optimization
The visualization chunk fragment

code: [FMassVisualizationChunkFragment](API\Plugins\MassLOD\FMassVisualizationChunkFragment) & UpdateChunkVisibility ( [FMassExecutionContext](API\Plugins\MassEntity\FMassExecutionContext) & Context ) const


description: Update representation and visibility for each entity, must be called within a ForEachEntityChunk

code: void UpdateVisualization ( [FMassExecutionContext](API\Plugins\MassEntity\FMassExecutionContext) & Context )


description: Updates entity visibility tag for later chunk logic optimization

code: static void UpdateEntityVisibility ( const [FMassEntityHandle](API\Plugins\MassEntity\FMassEntityHandle) Entity, const [FMassRepresentationFragment](API\Plugins\MassRepresentation\FMassRepresentationFragment) & Representation, const [FMassRepresentationLODFragment](API\Plugins\MassRepresentation\FMassRepresentationLODFragment) & RepresentationLOD, [FMassVisualizationChunkFragment](API\Plugins\MassLOD\FMassVisualizationChunkFragment) & ChunkData, [FMassCommandBuffer](API\Plugins\MassEntity\FMassCommandBuffer) & CommandBuffer )


className: UMassVisualizationProcessor


code: UMassVisualizationTrait()


description:
Retrieve if it is already registered or adds new signal to the lookup and return the bitflag for that Signal  is the name of the signal to retrieve or add to the lookup.
bitflag describing the name, or 0 if max names is reached.

module: MassSignals

code: uint64 GetOrAddSignalName ( const [FName](API\Runtime\Core\UObject\FName) SignalName )


className: MaxSignalNames

description: Max number of names each entity can contain

code: static constexpr int32 MaxSignalNames = 64;


description: Empties the name lookup and entity signals

code: void Reset()


className: UMassVisualizationTrait

description: This class has been soft-deprecated. Use MassStationaryVisualizationTrait or MassMovableVisualizationTrait

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)(Meta=(DisplayName="DEPRECATED Visualization")) class UMassVisualizationTrait : public [UMassEntityTraitBase](API\Plugins\MassSpawner\UMassEntityTraitBase)

bAllowServerSideVisualization

description: If set to true will result in the visualization-related fragments being added to server-size entities as well.

bCanModifyRepresentationSubsystemClass

description: The property is marked like this to ensure it won't show up in UI

HighResTemplateActor

type: TSubclassOf<AA...

description: Actor class of this agent when spawned in high resolution

LODParams

type: FMassVisualizat...

description: Configuration parameters for the visualization LOD processor

LowResTemplateActor

description: Actor class of this agent when spawned in low resolution

Params

type: FMassRepresenta...

description: Configuration parameters for the representation processor

RepresentationSubsystemClass

type: TSubclassOf<UM...

description: Allow subclasses to override the representation subsystem to use

StaticMeshInstanceDesc

type: FStaticMeshInst...

description: Instanced static mesh information for this agent


description:
Retrieve for a specific entity the raised signal this frame
Array of signal names raised for this entity

code: void GetSignalsForEntity ( const [FMassEntityHandle](API\Plugins\MassEntity\FMassEntityHandle) Entity, [TArray](API\Runtime\Core\Containers\TArray)< [FName](API\Runtime\Core\UObject\FName) > & OutSignals ) const


className: FMassSignalNameLookup

description: MassSignalNameLookup stores list of Signal names for each entity. The names are stored per entity as a bitmask, you can allocate new name usingGetOrAddSignalName(). This limits the names to 64.

code: struct FMassSignalNameLookup

EntitySignals

description: Map from entity id to name bitmask

SignalNames

type: TArray<FName>

description: Array of Signal names


description: Adds specified Signal name bitflag to an entity

code: void AddSignalToEntity ( const [FMassEntityHandle](API\Plugins\MassEntity\FMassEntityHandle) Entity, const uint64 SignalFlag )


className: FSignalDelegate

code: typedef TMulticastDelegate_TwoParams< void, [FName](API\Runtime\Core\UObject\FName), TConstArrayView< [FMassEntityHandle](API\Plugins\MassEntity\FMassEntityHandle) > > FSignalDelegate


description:
Singleton-like access to this module's interface. This is just for convenience! Beware of calling this during the shutdown phase, though. Your module might have been unloaded already.
Returns singleton instance, loading the module on demand if needed

code: static [IMassSignalsModule](API\Plugins\MassSignals\IMassSignalsModule) & Get()


description:
Checks to see if this module is loaded and ready. It is only valid to callGet()ifIsAvailable()returns true.
True if the module is loaded and ready to use

code: static bool IsAvailable()


className: IMassSignalsModule

description: The public interface to this module. In most cases, this interface is only public to sibling modules within this plugin.

code: class IMassSignalsModule : public [IModuleInterface](API\Runtime\Core\Modules\IModuleInterface)


className: GameThreadOnly

code: enum &123; GameThreadOnly = false &125;


code: template<> struct TMassExternalSubsystemTraits< UMassSignalSubsystem >


description: Called before destroying the object. This is called immediately upon deciding to destroy the object, to allow the object to begin an asynchronous cleanup process.

code: virtual void BeginDestroy()


className: BuffersCount

code: static constexpr int BuffersCount = 2;


description: Execution method for this processor

code: virtual void Execute ( [FMassEntityManager](API\Plugins\MassEntity\FMassEntityManager) & EntityManager, [FMassExecutionContext](API\Plugins\MassEntity\FMassExecutionContext) & Context )


description: Configure the ownedFMassEntityQueryinstances to express processor queries requirements

code: virtual void ConfigureQueries()


description: Callback that is being called when new signal is raised

code: virtual void OnSignalReceived ( [FName](API\Runtime\Core\UObject\FName) SignalName, TConstArrayView< [FMassEntityHandle](API\Plugins\MassEntity\FMassEntityHandle) > Entities )


description: To receive notification about a particular signal, you need to subscribe to it.

code: void SubscribeToSignal ( [UMassSignalSubsystem](API\Plugins\MassSignals\UMassSignalSubsystem) & SignalSubsystem, const [FName](API\Runtime\Core\UObject\FName) SignalName )


description: Actual method that derived class needs to implement to act on a signal that is raised for that frame

code: virtual void SignalEntities ( [FMassEntityManager](API\Plugins\MassEntity\FMassEntityManager) & EntityManager, [FMassExecutionContext](API\Plugins\MassEntity\FMassExecutionContext) & Context, [FMassSignalNameLookup](API\Plugins\MassSignals\FMassSignalNameLookup) & EntitySignals )


code: UMassSignalProcessorBase ( const [FObjectInitializer](API\Runtime\CoreUObject\UObject\FObjectInitializer) & ObjectInitializer )


className: UMassSignalProcessorBase

description: Processor for executing signals on each targeted entities The derived classes only need to implement the method SignalEntities to actually received the raised signals for the entities they subscribed to

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)(Abstract) class UMassSignalProcessorBase : public [UMassProcessor](API\Plugins\MassEntity\UMassProcessor)


description: Implement this for deinitialization of instances of the system

code: virtual void Deinitialize()


description: Inform multiple entities of a signal being raised in a certain amount of seconds

code: void DelaySignalEntities ( [FName](API\Runtime\Core\UObject\FName) SignalName, TConstArrayView< [FMassEntityHandle](API\Plugins\MassEntity\FMassEntityHandle) > Entities, const float DelayInSeconds )


description: Inform multiple entities of a signal being raised asynchronously using the Mass Command Buffer

code: void DelaySignalEntitiesDeferred ( [FMassExecutionContext](API\Plugins\MassEntity\FMassExecutionContext) & Context, [FName](API\Runtime\Core\UObject\FName) SignalName, TConstArrayView< [FMassEntityHandle](API\Plugins\MassEntity\FMassEntityHandle) > Entities, const float DelayInSeconds )


description: Inform a single entity of a signal being raised in a certain amount of seconds

code: void DelaySignalEntity ( [FName](API\Runtime\Core\UObject\FName) SignalName, const [FMassEntityHandle](API\Plugins\MassEntity\FMassEntityHandle) Entity, const float DelayInSeconds )


description: Retrieve the delegate dispatcher from the signal name

code: [UE::MassSignal::FSignalDelegate](API\Plugins\MassSignals\FSignalDelegate) & GetSignalDelegateByName ( [FName](API\Runtime\Core\UObject\FName) SignalName )


description: Inform single entity of a signal being raised asynchronously using the Mass Command Buffer

code: void DelaySignalEntityDeferred ( [FMassExecutionContext](API\Plugins\MassEntity\FMassExecutionContext) & Context, [FName](API\Runtime\Core\UObject\FName) SignalName, const [FMassEntityHandle](API\Plugins\MassEntity\FMassEntityHandle) Entity, const float DelayInSeconds )


className: FDelayedSignal

code: struct FDelayedSignal

Entities

type: TArray<FMassEn...

SignalName

type: FName

TargetTimestamp

type: double


description: USubsystemimplementation Begin.

code: virtual void Initialize ( [FSubsystemCollectionBase](API\Runtime\Engine\Subsystems\FSubsystemCollectionBase) & Collection )


description: Inform multiple entities of a signal being raised

code: void SignalEntities ( [FName](API\Runtime\Core\UObject\FName) SignalName, TConstArrayView< [FMassEntityHandle](API\Plugins\MassEntity\FMassEntityHandle) > Entities )


code: void SignalEntitiesDeferred ( [FMassExecutionContext](API\Plugins\MassEntity\FMassExecutionContext) & Context, [FName](API\Runtime\Core\UObject\FName) SignalName, TConstArrayView< [FMassEntityHandle](API\Plugins\MassEntity\FMassEntityHandle) > Entities )


description: Inform a single entity of a signal being raised

code: void SignalEntity ( [FName](API\Runtime\Core\UObject\FName) SignalName, const [FMassEntityHandle](API\Plugins\MassEntity\FMassEntityHandle) Entity )


code: void SignalEntityDeferred ( [FMassExecutionContext](API\Plugins\MassEntity\FMassExecutionContext) & Context, [FName](API\Runtime\Core\UObject\FName) SignalName, const [FMassEntityHandle](API\Plugins\MassEntity\FMassEntityHandle) Entity )


description: Pure virtual that must be overloaded by the inheriting class. It will be called from within LevelTick.cpp after ticking all actors or from the rendering thread (depending on bIsRenderingThreadObject)

code: virtual void Tick ( float DeltaTime )


className: UMassSignalSubsystem

description: A subsystem for handling Signals in Mass

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)() class UMassSignalSubsystem : public [UTickableWorldSubsystem](API\Runtime\Engine\Subsystems\UTickableWorldSubsystem)

DelayedSignals

type: TArray<FDelaye...

NamedSignals

type: TMap<FName,UE...


description:
Singleton-like access to this module's interface. This is just for convenience! Beware of calling this during the shutdown phase, though. Your module might have been unloaded already.
Returns singleton instance, loading the module on demand if needed

module: MassSimulation

code: static [IMassSimulationModule](API\Plugins\MassSimulation\IMassSimulationModule) & Get()


description:
Checks to see if this module is loaded and ready. It is only valid to callGet()ifIsAvailable()returns true.
True if the module is loaded and ready to use

code: static bool IsAvailable()


description: Return the stat id to use for this tickable

code: virtual [TStatId](API\Runtime\Core\Stats\TStatId) GetStatId() const


className: IMassSimulationModule

description: The public interface to this module. In most cases, this interface is only public to sibling modules within this plugin.

code: class IMassSimulationModule : public [IModuleInterface](API\Runtime\Core\Modules\IModuleInterface)


className: UMassSimulationSettings

description: Implements the settings for MassSimulation

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)(Config=Mass, defaultconfig, DisplayName="Mass Simulation") class UMassSimulationSettings : public [UMassModuleSettings](API\Plugins\MassEntity\UMassModuleSettings)

DesiredActorDestructionTimeSlicePerTick

description: The desired budget in seconds allowed to do actor destruction per frame

type: float

description: The distance a failed spawned actor needs to move before we retry, default 10 meters

description: The time to wait before retrying to spawn an actor that previously failed, default 10 seconds

DesiredActorSpawningTimeSlicePerTick

description: The desired budget in seconds allowed to do actor spawning per frame

DesiredEntityCompactionTimeSlicePerTick

description: The desired budget in seconds allowed to do entity compaction per frame


description: Called before destroying the object. This is called immediately upon deciding to destroy the object, to allow the object to begin an asynchronous cleanup process.

code: virtual void BeginDestroy()


description: Implement this for deinitialization of instances of the system

code: virtual void Deinitialize()


className: FOnSimulationStarted

code: typedef TMulticastDelegate_OneParam< void, [UWorld](API\Runtime\Engine\Engine\UWorld) * > FOnSimulationStarted


code: [FMassProcessingPhase::FOnPhaseEvent](API\Plugins\MassEntity\FMassProcessingPhase\FOnPhaseEvent) & GetOnProcessingPhaseFinished ( const [EMassProcessingPhase](API\Plugins\MassEntity\EMassProcessingPhase) Phase )


code: [FMassProcessingPhase::FOnPhaseEvent](API\Plugins\MassEntity\FMassProcessingPhase\FOnPhaseEvent) & GetOnProcessingPhaseStarted ( const [EMassProcessingPhase](API\Plugins\MassEntity\EMassProcessingPhase) Phase )


code: const [FMassProcessingPhaseManager](API\Plugins\MassEntity\FMassProcessingPhaseManager) & GetPhaseManager() const


description: Implement this for initialization of instances of the system

code: virtual void Initialize ( [FSubsystemCollectionBase](API\Runtime\Engine\Subsystems\FSubsystemCollectionBase) & Collection )


description: whether hosted EntityManager is currently, actively being used for processing purposes. Equivalent to callingFMassEntityManager.IsProcessing()

code: bool IsDuringMassProcessing() const


code: bool IsSimulationStarted() const


code: void OnMassEntitySettingsChange ( const [FPropertyChangedEvent](API\Runtime\CoreUObject\UObject\FPropertyChangedEvent) & PropertyChangedEvent )


code: void OnPieBegin ( const bool bIsSimulation )


code: void OnPieEnded ( const bool bIsSimulation )


code: void OnProcessingPhaseStarted ( const float DeltaSeconds, const [EMassProcessingPhase](API\Plugins\MassEntity\EMassProcessingPhase) Phase ) const


description: Called when world is ready to start gameplay before the game mode transitions to the correct state and call BeginPlay on all actors

code: virtual void OnWorldBeginPlay ( [UWorld](API\Runtime\Engine\Engine\UWorld) & InWorld )


description: Called once all UWorldSubsystems have been initialized

code: virtual void PostInitialize()


code: void RebuildTickPipeline()


code: void RegisterDynamicProcessor ( [UMassProcessor](API\Plugins\MassEntity\UMassProcessor) & Processor )


code: void StartSimulation ( [UWorld](API\Runtime\Engine\Engine\UWorld) & InWorld )


code: UMassSimulationSubsystem ( const [FObjectInitializer](API\Runtime\CoreUObject\UObject\FObjectInitializer) & ObjectInitializer )


code: void UnregisterDynamicProcessor ( [UMassProcessor](API\Plugins\MassEntity\UMassProcessor) & Processor )


className: UMassSimulationSubsystem

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)(Config=Game, defaultconfig) class UMassSimulationSubsystem : public [UWorldSubsystem](API\Runtime\Engine\Subsystems\UWorldSubsystem)

EntityManager

type: TSharedPtr<FMa...

MassEntitySettingsChangeHandle

type: FDelegateHandle

PhaseManager

type: FMassProcessing...

RuntimePipeline

type: FMassRuntimePip...


className: EMassSmartObjectInteractionStatus

module: MassSmartObjects

code: enum EMassSmartObjectInteractionStatus { Unset, InProgress, BehaviorCompleted, TaskCompleted, Aborted, }


code: FMassBehaviorEntityContext()


code: FMassBehaviorEntityContext ( const [FMassEntityView](API\Plugins\MassEntity\FMassEntityView) InEntityView, [USmartObjectSubsystem](API\Plugins\SmartObjectsModule\USmartObjectSubsystem) & InSubsystem )


className: FMassBehaviorEntityContext

description: Struct to pass around the required set of information to activate a mass behavior definition on a given entity. Context must be created on stack and not kept around since EntityView validity is not guaranteed.

code: struct FMassBehaviorEntityContext

EntityView

type: constFMassEnti...

SmartObjectSubsystem

type: USmartObjectSub...


className: MaxNumCandidates

code: static constexpr uint32 MaxNumCandidates = 4;


className: FMassSmartObjectCandidateSlots

description: Struct that holds status and results of a candidate finder request

Slots

type: TStaticArray<F...


className: FMassSmartObjectCompletedRequestTag

description: Special tag to mark processed requests

code: [USTRUCT](Programming/UnrealArchitecture/Reference/Structs)() struct FMassSmartObjectCompletedRequestTag : public [FMassTag](API\Plugins\MassEntity\FMassTag)


description:
Claims the first available smart object from the provided candidates.
Whether the slot has been successfully claimed or not

code: [FSmartObjectClaimHandle](API\Plugins\SmartObjectsModule\FSmartObjectClaimHandle) ClaimCandidate ( const [FMassEntityHandle](API\Plugins\MassEntity\FMassEntityHandle) Entity, [FMassSmartObjectUserFragment](API\Plugins\MassSmartObjects\FMassSmartObjectUserFragment) & User, const [FMassSmartObjectCandidateSlots](API\Plugins\MassSmartObjects\FMassSmartObjectCandidateSlots) & Candidates ) const


description:
Claims the first available slot holding any type ofUSmartObjectMassBehaviorDefinitionin the smart object associated to the provided identifier.
Whether the slot has been successfully claimed or not

code: [FSmartObjectClaimHandle](API\Plugins\SmartObjectsModule\FSmartObjectClaimHandle) ClaimSmartObject ( const [FMassEntityHandle](API\Plugins\MassEntity\FMassEntityHandle) Entity, [FMassSmartObjectUserFragment](API\Plugins\MassSmartObjects\FMassSmartObjectUserFragment) & User, const [FSmartObjectRequestResult](API\Plugins\SmartObjectsModule\FSmartObjectRequestResult) & RequestResult ) const


description:
Creates an async request to build a list of compatible smart objects around the provided location. The caller must poll using the request id to know when the reservation can be done.
Request identifier that can be used to try claiming a result once available

code: [FMassSmartObjectRequestID](API\Plugins\MassSmartObjects\FMassSmartObjectRequestID) FindCandidatesAsync ( const [FMassEntityHandle](API\Plugins\MassEntity\FMassEntityHandle) RequestingEntity, const [FGameplayTagContainer](API\Runtime\GameplayTags\FGameplayTagContainer) & UserTags, const [FGameplayTagQuery](API\Runtime\GameplayTags\FGameplayTagQuery) & ActivityRequirements, const FVector & Location ) const


description:
Creates an async request to build a list of compatible smart objects around the provided lane location. The caller must poll using the request id to know when the reservation can be done.
Request identifier that can be used to try claiming a result once available

code: [FMassSmartObjectRequestID](API\Plugins\MassSmartObjects\FMassSmartObjectRequestID) FindCandidatesAsync ( const [FMassEntityHandle](API\Plugins\MassEntity\FMassEntityHandle) RequestingEntity, const [FGameplayTagContainer](API\Runtime\GameplayTags\FGameplayTagContainer) & UserTags, const [FGameplayTagQuery](API\Runtime\GameplayTags\FGameplayTagQuery) & ActivityRequirements, const [FZoneGraphCompactLaneLocation](API\Plugins\ZoneGraph\FZoneGraphCompactLaneLocation) & LaneLocation ) const


description:
Provides the result of a previously created request from FindCandidatesAsync to indicate if it has been processed and the results can be used by ClaimCandidate.
The current request's result, nullptr if request not ready yet.

code: const [FMassSmartObjectCandidateSlots](API\Plugins\MassSmartObjects\FMassSmartObjectCandidateSlots) * GetRequestCandidates ( const [FMassSmartObjectRequestID](API\Plugins\MassSmartObjects\FMassSmartObjectRequestID) & RequestID ) const


description: Deletes the request associated to the specified identifier

code: void RemoveRequest ( const [FMassSmartObjectRequestID](API\Plugins\MassSmartObjects\FMassSmartObjectRequestID) & RequestID ) const


description:
Activates the mass gameplay behavior associated to the previously claimed smart object.
Whether the slot has been successfully claimed or not

code: bool StartUsingSmartObject ( const [FMassEntityHandle](API\Plugins\MassEntity\FMassEntityHandle) Entity, [FMassSmartObjectUserFragment](API\Plugins\MassSmartObjects\FMassSmartObjectUserFragment) & User, const [FSmartObjectClaimHandle](API\Plugins\SmartObjectsModule\FSmartObjectClaimHandle) ClaimHandle ) const


description: Releases a claimed/in-use smart object and update user fragment.

code: void ReleaseSmartObject ( const [FMassEntityHandle](API\Plugins\MassEntity\FMassEntityHandle) Entity, [FMassSmartObjectUserFragment](API\Plugins\MassSmartObjects\FMassSmartObjectUserFragment) & User, const [FSmartObjectClaimHandle](API\Plugins\SmartObjectsModule\FSmartObjectClaimHandle) ClaimHandle ) const


description: Deactivates the mass gameplay behavior started using StartUsingSmartObject.

code: void StopUsingSmartObject ( const [FMassEntityHandle](API\Plugins\MassEntity\FMassEntityHandle) Entity, [FMassSmartObjectUserFragment](API\Plugins\MassSmartObjects\FMassSmartObjectUserFragment) & User, const [EMassSmartObjectInteractionStatus](API\Plugins\MassSmartObjects\EMassSmartObjectInteractionStatu-) NewStatus ) const


description: FMassSmartObjectHandlerconstructor

code: FMassSmartObjectHandler ( [FMassEntityManager](API\Plugins\MassEntity\FMassEntityManager) & InEntityManager, [FMassExecutionContext](API\Plugins\MassEntity\FMassExecutionContext) & InExecutionContext, [USmartObjectSubsystem](API\Plugins\SmartObjectsModule\USmartObjectSubsystem) & InSmartObjectSubsystem, [UMassSignalSubsystem](API\Plugins\MassSignals\UMassSignalSubsystem) & InSignalSubsystem )


className: FMassSmartObjectHandler

description: Mediator struct that encapsulates communication between SmartObjectSubsystem and Mass. This object is meant to be created and used in method scope to guarantee subsystems validity.

code: struct FMassSmartObjectHandler


description: Fragment used to build a list potential smart objects to use. Once added to an entity this will be processed by the candidates finder processor to fill a SmartObjectCandidates fragment that could then be processed by the reservation processor

code: [USTRUCT](Programming/UnrealArchitecture/Reference/Structs)() struct FMassSmartObjectLaneLocationRequestFragment : public [FMassFragment](API\Plugins\MassEntity\FMassFragment)

ActivityRequirements

type: FGameplayTagQue...

CompactLaneLocation

type: FZoneGraphCompa...

RequestingEntity

type: FMassEntityHand...

UserTags

type: FGameplayTagCon...


code: FMassSmartObjectRequestID()


code: FMassSmartObjectRequestID ( const [FMassEntityHandle](API\Plugins\MassEntity\FMassEntityHandle) InEntity )


className: FMassSmartObjectRequestID

description: Identifier associated to a request for smart object candidates. We use a 1:1 match with anFMassEntityHandlesince all requests are batched together using the EntitySubsystem.


className: FMassSmartObjectRequestResultFragment

description: Fragment that holds the result of a request to find candidates.

code: [USTRUCT](Programming/UnrealArchitecture/Reference/Structs)() struct FMassSmartObjectRequestResultFragment : public [FMassFragment](API\Plugins\MassEntity\FMassFragment)

bProcessed

type: bool

Candidates

type: FMassSmartObjec...


className: FMassSmartObjectTimedBehaviorFragment

description: Fragment used to process time based smartobject interactions

code: [USTRUCT](Programming/UnrealArchitecture/Reference/Structs)() struct FMassSmartObjectTimedBehaviorFragment : public [FMassFragment](API\Plugins\MassEntity\FMassFragment)


className: FMassSmartObjectUserFragment

description: Fragment used by an entity to be able to interact with smart objects

code: [USTRUCT](Programming/UnrealArchitecture/Reference/Structs)() struct FMassSmartObjectUserFragment : public [FMassFragment](API\Plugins\MassEntity\FMassFragment)

InteractionCooldownEndTime

type: double

description: World time in seconds before which the user is considered in cooldown and won't look for new interactions (value of 0 indicates no cooldown).

InteractionHandle

type: FSmartObjectCla...

description: Claim handle for the currently active smart object interaction.

InteractionStatus

type: EMassSmartObjec...

description: Status of the current active smart object interaction.

UserTags

description: Tags describing the smart object user.


code: operator FMassEntityHandle() const


code: [USTRUCT](Programming/UnrealArchitecture/Reference/Structs)() struct FMassSmartObjectWorldLocationRequestFragment : public [FMassFragment](API\Plugins\MassEntity\FMassFragment)

SearchOrigin

type: FVector


className: FOnAnnotationSettingsChanged

description: Called when annotation tag settings changed.

code: typedef TMulticastDelegate_NoParams< void > FOnAnnotationSettingsChanged


description: True if this entry is valid (associated to a valid zone graph data), false otherwise.

code: bool IsValid() const


description: Reset all internal data.

code: void Reset()


className: FSmartObjectAnnotationData

description: Per ZoneGraphData smart object look up data.

AffectedLanes

type: TArray< int32 >

DataHandle

type: FZoneGraphDataH...

description: Handle of the ZoneGraphData that this smart object annotation data is associated to

LaneToLaneLocationIndicesLookup

type: TMap< int32,FS...

SmartObjectLaneLocations

type: TArray<FSmartO...

SmartObjectToLaneLocationIndexLookup

type: TMap<FSmartObj...


code: FSmartObjectCandidateSlot()


code: FSmartObjectCandidateSlot ( const [FSmartObjectRequestResult](API\Plugins\SmartObjectsModule\FSmartObjectRequestResult) InResult, const float InCost )


className: FSmartObjectCandidateSlot

description: Structure that represents a potential smart object slot for a MassEntity during the search

Cost

type: float

Result

type: FSmartObjectReq...


code: FSmartObjectLaneLocation()


code: FSmartObjectLaneLocation ( const [FSmartObjectHandle](API\Plugins\SmartObjectsModule\FSmartObjectHandle) InObjectHandle, const int32 InLaneIndex, const float InDistanceAlongLane )


className: FSmartObjectLaneLocation

description: Struct to keep track of a SmartObject entry point on a given lane.

ObjectHandle

type: FSmartObjectHan...


className: FSmartObjectLaneLocationIndices

description: Struct to store indices to all entry points on a given lane. Used as a container wrapper to be able to use in aTMap.


code: FSmartObjectMassEntityUserData ( const [FMassEntityHandle](API\Plugins\MassEntity\FMassEntityHandle) InEntityHandle )


code: FSmartObjectMassEntityUserData()


className: FSmartObjectMassEntityUserData

description: The struct can also be used to be added to a Smart Object slot when it gets claimed. e.g. Claim(SlotHandle, FConstStructView::Make(FSmartObjectMassEntityUserData(Entity)));


description:
Singleton-like access to this module's interface. This is just for convenience! Beware of calling this during the shutdown phase, though. Your module might have been unloaded already.
Returns singleton instance, loading the module on demand if needed

code: static [IMassSmartObjectsModule](API\Plugins\MassSmartObjects\IMassSmartObjectsModule) & Get()


description:
Checks to see if this module is loaded and ready. It is only valid to callGet()ifIsAvailable()returns true.
True if the module is loaded and ready to use

code: static bool IsAvailable()


className: IMassSmartObjectsModule

description: The public interface to this module. In most cases, this interface is only public to sibling modules within this plugin.

code: class IMassSmartObjectsModule : public [IModuleInterface](API\Runtime\Core\Modules\IModuleInterface)


code: virtual void ConfigureQueries()


code: virtual void Execute ( [FMassEntityManager](API\Plugins\MassEntity\FMassEntityManager) & EntityManager, [FMassExecutionContext](API\Plugins\MassEntity\FMassExecutionContext) & Context )


description: Processor that builds a list of candidates objects for each users.

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)() class UMassSmartObjectCandidatesFinderProcessor : public [UMassProcessor](API\Plugins\MassEntity\UMassProcessor)

LaneRequestQuery

type: FMassEntityQuer...

description: Query to fetch and process requests to find smart objects on zone graph lanes.

SearchExtents

description: Extents used to perform the spatial query in the octree for world location queries.

WorldRequestQuery

description: Query to fetch and process requests to find smart objects using spacial query around a given world location.


description: This alternate version of PostEditChange is called when properties inside structs are modified. The property that was actually modified is located at the tail of the list. The head of the list of theFStructPropertymember variable that contains the property that was modified.

code: virtual void PostEditChangeChainProperty ( [FPropertyChangedChainEvent](API\Runtime\CoreUObject\UObject\FPropertyChangedChainEvent) & PropertyChangedEvent )


className: UMassSmartObjectSettings

description: Settings for the MassSmartObject module.

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)(Config=Plugins, defaultconfig, DisplayName="Mass SmartObject") class UMassSmartObjectSettings : public [UMassModuleSettings](API\Plugins\MassEntity\UMassModuleSettings)

OnAnnotationSettingsChanged

type: FOnAnnotationSe...

SearchExtents

description: Extents used to find precomputed entry points to reach a smart object from a zone graph lane.

SmartObjectTag

type: FZoneGraphTag

description: Tag used to indicate that smart objects are associated to a lane for queries using lanes.


className: UMassSmartObjectTimedBehaviorProcessor

description: Processor for time based user's behavior that waits x seconds then releases its claim on the object

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)() class UMassSmartObjectTimedBehaviorProcessor : public [UMassProcessor](API\Plugins\MassEntity\UMassProcessor)


description: No constructors are accessible with public or protected access.


description: Appends items into the entity template required for the trait.

code: virtual void BuildTemplate ( [FMassEntityTemplateBuildContext](API\Plugins\MassSpawner\FMassEntityTemplateBuildContext) & BuildContext, const [UWorld](API\Runtime\Engine\Engine\UWorld) & World ) const


className: UMassSmartObjectUserTrait

description: Trait to allow an entity to interact with SmartObjects

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)(Meta=(DisplayName="SmartObject User")) class UMassSmartObjectUserTrait : public [UMassEntityTraitBase](API\Plugins\MassSpawner\UMassEntityTraitBase)

UserTags

type: FGameplayTagCon...

description: Tags describing the SmartObject user. Used when searching smart objects.


description: This virtual method allows subclasses to configure the MassEntity based on their parameters (e.g. Add fragments)

code: virtual void Activate ( [FMassCommandBuffer](API\Plugins\MassEntity\FMassCommandBuffer) & CommandBuffer, const [FMassBehaviorEntityContext](API\Plugins\MassSmartObjects\FMassBehaviorEntityContext) & EntityContext ) const


description: This virtual method allows subclasses to update the MassEntity on interaction deactivation (e.g. Remove fragments)

code: virtual void Deactivate ( [FMassCommandBuffer](API\Plugins\MassEntity\FMassCommandBuffer) & CommandBuffer, const [FMassBehaviorEntityContext](API\Plugins\MassSmartObjects\FMassBehaviorEntityContext) & EntityContext ) const


className: USmartObjectMassBehaviorDefinition

description: Base class for MassAIBehavior definitions. This is the type of definitions that MassEntity queries will look for. Definition subclass can parameterized its associated behavior by overriding method Activate.

UseTime

description: Indicates the amount of time the Massentity will execute its behavior when reaching the smart object.


code: const [FSmartObjectAnnotationData](API\Plugins\MassSmartObjects\FSmartObjectAnnotationData) * GetAnnotationData ( [FZoneGraphDataHandle](API\Plugins\ZoneGraph\FZoneGraphDataHandle) DataHandle ) const


description: Called when scene proxy is rebuilt.

code: virtual void DebugDraw ( [FZoneGraphAnnotationSceneProxy](API\Plugins\ZoneGraphAnnotations\FZoneGraphAnnotationSceneProxy) * DebugProxy )


description: Tags applied by the Annotation, used to lookup Annotations from tags.

code: virtual [FZoneGraphTagMask](API\Plugins\ZoneGraph\FZoneGraphTagMask) GetAnnotationTags() const


code: [TOptional](API\Runtime\Core\IO\TOptional)< [FSmartObjectLaneLocation](API\Plugins\MassSmartObjects\FSmartObjectLaneLocation) > GetSmartObjectLaneLocation ( const [FZoneGraphDataHandle](API\Plugins\ZoneGraph\FZoneGraphDataHandle) DataHandle, const [FSmartObjectHandle](API\Plugins\SmartObjectsModule\FSmartObjectHandle) SmartObjectHandle ) const


description: Called when a component is unregistered. Called after DestroyRenderState_Concurrent and OnDestroyPhysicsState are called.

code: virtual void OnUnregister()


description: Called duringOnRegister(), or after all subsystems have been initialized.


description: Called when new ZoneGraph data is removed.

code: virtual void PreZoneGraphDataRemoved ( const [AZoneGraphData](API\Plugins\ZoneGraph\AZoneGraphData) & ZoneGraphData )


code: void RebuildForAllGraphs()


code: void RebuildForSingleGraph ( [FSmartObjectAnnotationData](API\Plugins\MassSmartObjects\FSmartObjectAnnotationData) & Data, const [FZoneGraphStorage](API\Plugins\ZoneGraph\FZoneGraphStorage) & Storage )


description: Ticks the Annotation and changes the tags in the container when needed.

code: virtual void TickAnnotation ( const float DeltaTime, [FZoneGraphAnnotationTagContainer](API\Plugins\ZoneGraphAnnotations\FZoneGraphAnnotationTagContainer) & AnnotationTagContainer )


description: Handles reading, writing, and reference collecting usingFArchive. This implementation handles allFPropertyserialization, but can be overridden for native variables.

code: virtual void Serialize ( [FArchive](API\Runtime\Core\Serialization\FArchive) & Ar )


className: USmartObjectZoneAnnotations

description: ZoneGraph annotations for smart objects

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)(ClassGroup=AI, BlueprintType, Meta=(BlueprintSpawnableComponent)) class USmartObjectZoneAnnotations : public [UZoneGraphAnnotationComponent](API\Plugins\ZoneGraphAnnotations\UZoneGraphAnnotationComponent)

AffectedLaneTags

type: FZoneGraphTagFi...

description: Filter specifying which lanes the behavior is applied to.

BehaviorTag

description: Tag to mark the lanes that offers smart objects.

bRebuildAllGraphsRequested

type: bool

OnAnnotationSettingsChangedHandle

type: FDelegateHandle

SmartObjectAnnotationDataArray

description: Entry points graph for each ZoneGraphData.

SmartObjectSubsystem

type: TObjectPtr<USm...

description: Cached SmartObjectSubsystem


description: Called before destroying the object. This is called immediately upon deciding to destroy the object, to allow the object to begin an asynchronous cleanup process.

module: MassSpawner

code: virtual void BeginDestroy()


description: Overridable native event for when play begins for this actor.

code: virtual void BeginPlay()


code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintCallable, CallInEditor, Category="Debug") void DEBUG_Spawn()


description: Remove all the entities

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintCallable, CallInEditor, Category="Debug") void DEBUG_Clear()


description:
If given entity has been spawned by this MassSpawner instance then it will get destroyed and all the book keeping updated. Otherwise the call has no effect.
true if the entity got removed. False otherwise.

code: bool DespawnEntity ( const [FMassEntityHandle](API\Plugins\MassEntity\FMassEntityHandle) Entity )


description: Despawn all mass agent that was spawned by this spawner


description: Called when new ZoneGraph data is added.

code: virtual void PostZoneGraphDataAdded ( const [AZoneGraphData](API\Plugins\ZoneGraph\AZoneGraphData) & ZoneGraphData )


description: Starts the spawning of all the agent types of this spawner


description: Overridable function called whenever this actor is being removed from a level

code: virtual void EndPlay ( const [EEndPlayReason::Type](API\Runtime\Engine\Engine\EEndPlayReason__Type) EndPlayReason )


className: FSpawnedEntities

code: struct FSpawnedEntities

Entities

type: TArray<FMassEn...

TemplateID

type: FMassEntityTemp...


code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintCallable, Category="Spawning") int32 GetCount() const


code: [UMassProcessor](API\Plugins\MassEntity\UMassProcessor) * GetPostSpawnProcessor ( [TSubclassOf](API\Runtime\CoreUObject\Templates\TSubclassOf)< [UMassProcessor](API\Plugins\MassEntity\UMassProcessor) > ProcessorClass )


description: Any EntitiesToIgnore previously spawned by this spawner will remain spawned and tracked by this spawner.

code: void DoDespawning ( TConstArrayView< [FMassEntityHandle](API\Plugins\MassEntity\FMassEntityHandle) > EntitiesToIgnore )


code: void OnPostWorldInit ( [UWorld](API\Runtime\Engine\Engine\UWorld) * World, const [UWorld::InitializationValues](API\Runtime\Engine\Engine\UWorld\InitializationValues) )


code: void OnSpawnDataGenerationFinished ( TConstArrayView< [FMassEntitySpawnDataGeneratorResult](API\Plugins\MassSpawner\FMassEntitySpawnDataGeneratorRes-) > Results, [FMassSpawnDataGenerator](API\Plugins\MassSpawner\FMassSpawnDataGenerator) * FinishedGenerator )


description: Called when a property on this object has been modified externally

code: virtual void PostEditChangeProperty ( [FPropertyChangedEvent](API\Runtime\CoreUObject\UObject\FPropertyChangedEvent) & PropertyChangedEvent )


description: Do any object-specific cleanup required immediately after loading an object. This is not called for newly-created objects, and by default will always execute on the game thread.

code: virtual void PostLoad()


description: Called after all the components in the Components array are registered, called both in editor and during gameplay. bHasRegisteredAllComponents must be set true prior to calling this function.


code: void RegisterEntityTemplates()


code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintCallable, Category="Spawning") float GetSpawningCountScale() const


description: Scales the spawning counts

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintCallable, Category="Spawning") void ScaleSpawningCount ( float Scale )


code: void SpawnGeneratedEntities ( TConstArrayView< [FMassEntitySpawnDataGeneratorResult](API\Plugins\MassSpawner\FMassEntitySpawnDataGeneratorRes-) > Results )


className: AMassSpawner

description: A spawner you can put on a map and configure it to spawn different things

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)(HideCategories=(Object, Actor, Input, Rendering, LOD, Cooking, Collision, HLOD, Partition)) class AMassSpawner : public [AActor](API\Runtime\Engine\GameFramework\AActor)

AllSpawnedEntities

type: TArray<FSpawne...

bAutoSpawnOnBeginPlay

type: uint32:  1

bOverrideSchematics

description: Bydefault TickSchematics will be appended to the simulation's schematics.

EntityTypes

type: TArray<FMassSp...

description: Array of entity types to spawn. These define which entities to spawn.

OnDespawningFinishedEvent

type: FMassSpawnerOnD...

description: Called once DoDespawning completes and all mass agents spawned by this spawner have been despawned.

OnSpawningFinishedEvent

type: FMassSpawnerOnS...

description: Called once DoSpawning completes and all entities have been spawned.

PostSpawnProcessors

type: TArray<TObject...

SpawnDataGenerators

description: Array of entity spawn generators. These define where to spawn entities.

SpawningCountScale

description: Scale of the spawning count

StreamingHandle

type: TSharedPtr<FSt...


className: EFragmentInitialization

code: enum EFragmentInitialization { DefaultInitializer, NoInitializer, }


className: EMassTranslationDirection

code: enum EMassTranslationDirection { None = 0, InitializationOnly = 1, ActorToMass = 1 << 1, MassToActor = 1 << 2, BothWays = ActorToMass | MassToActor, }


className: FFinishedGeneratingSpawnDataSignature

code: typedef TBaseDelegate_OneParam< void, TConstArrayView< [FMassEntitySpawnDataGeneratorResult](API\Plugins\MassSpawner\FMassEntitySpawnDataGeneratorRes-) > > FFinishedGeneratingSpawnDataSignature


description: Adds Trait to the collection of traits hosted by thisFMassEntityConfiginstance

code: void AddTrait ( [UMassEntityTraitBase](API\Plugins\MassSpawner\UMassEntityTraitBase) & Trait )


code: void DestroyEntityTemplate ( const [UWorld](API\Runtime\Engine\Engine\UWorld) & World ) const


description: Deprecated* This flavor of DestroyEntityTemplate is deprecated. Use the one without the ConfigOwner parameter (now a property of theFMassEntityConfigitself)

code: void DestroyEntityTemplate ( const [UWorld](API\Runtime\Engine\Engine\UWorld) & World, const [UObject](API\Runtime\CoreUObject\UObject\UObject) & ConfigOwner ) const


description: Looks for a trait of the indicated type, accepting all child classes as well, unless bExactMatch == true

code: const [UMassEntityTraitBase](API\Plugins\MassSpawner\UMassEntityTraitBase) * FindTrait ( [TSubclassOf](API\Runtime\CoreUObject\Templates\TSubclassOf)< [UMassEntityTraitBase](API\Plugins\MassSpawner\UMassEntityTraitBase) > TraitClass, const bool bExactMatch ) const


description: Combines traits based on the config hierarchy and returns list of unique traits

code: void GetCombinedTraits ( [TArray](API\Runtime\Core\Containers\TArray)< [UMassEntityTraitBase](API\Plugins\MassSpawner\UMassEntityTraitBase) * > & OutTraits ) const


code: void GetCombinedTraits ( [TArray](API\Runtime\Core\Containers\TArray)< [UMassEntityTraitBase](API\Plugins\MassSpawner\UMassEntityTraitBase) * > & OutTraits, [TArray](API\Runtime\Core\Containers\TArray)< const [UObject](API\Runtime\CoreUObject\UObject\UObject) * > & Visited, const [UObject](API\Runtime\CoreUObject\UObject\UObject) & ConfigOwner ) const


description: Fetches the EntityTemplate for given World, fails a check if one cannot be found.

code: const [FMassEntityTemplate](API\Plugins\MassSpawner\FMassEntityTemplate) & GetEntityTemplateChecked ( const [UWorld](API\Runtime\Engine\Engine\UWorld) & World ) const


description: Deprecated* This flavor of GetEntityTemplateChecked is deprecated. Use the one without the ConfigOwner parameter (now a property of theFMassEntityConfigitself)

code: const [FMassEntityTemplate](API\Plugins\MassSpawner\FMassEntityTemplate) & GetEntityTemplateChecked ( const [UWorld](API\Runtime\Engine\Engine\UWorld) & World, const [UObject](API\Runtime\CoreUObject\UObject\UObject) & ConfigOwner ) const


code: const [FGuid](API\Runtime\Core\Misc\FGuid) & GetGuid() const


description: Deprecated* This flavor of GetOrCreateEntityTemplate is deprecated. Use the one without the ConfigOwner parameter (now a property of theFMassEntityConfigitself)

code: const [FMassEntityTemplate](API\Plugins\MassSpawner\FMassEntityTemplate) & GetOrCreateEntityTemplate ( const [UWorld](API\Runtime\Engine\Engine\UWorld) & World, const [UObject](API\Runtime\CoreUObject\UObject\UObject) & ConfigOwner ) const


description: Create entity template based on the features included in this config.

code: const [FMassEntityTemplate](API\Plugins\MassSpawner\FMassEntityTemplate) & GetOrCreateEntityTemplate ( const [UWorld](API\Runtime\Engine\Engine\UWorld) & World ) const