Navigation
Unreal Engine C++ API Reference > Plugins > SignificanceManager
Inheritance Hierarchy
- UObjectBase
- UObjectBaseUtility
- UObject
- USignificanceManager
References
Module | SignificanceManager |
Header | /Engine/Plugins/Runtime/SignificanceManager/Source/SignificanceManager/Public/SignificanceManager.h |
Include | #include "SignificanceManager.h" |
Syntax
UCLASS&40;Config&61;Engine, defaultconfig&41;
class USignificanceManager : public UObject
Remarks
The significance manager provides a framework for registering objects by tag to each have a significance value calculated from which a game specific subclass and game logic can make decisions about what level of detail objects should be at, tick frequency, whether to spawn effects, and other such functionality
Each object that is registered must have a corresponding unregister event or else a dangling Object reference will be left resulting in an eventual crash once the Object has been garbage collected.
Each user of the significance manager is expected to call the Update function from the appropriate location in the game code. GameViewportClient::Tick may often serve as a good place to do this.
Variables
Type | Name | Description | |
---|---|---|---|
![]() |
uint32: 1 | bCreateOnClient | Whether the significance manager should be created on a client. Only used from CDO and. |
![]() |
uint32: 1 | bCreateOnServer | Whether the significance manager should be created on the server. |
![]() |
uint32: 1 | bSortSignificanceAscending | Whether the significance sort should sort high values to the end of the list. |
![]() |
TArray< FTransform > | Viewpoints | The cached viewpoints for significance for calculating when a new object is registered. |
Constructors
Type | Name | Description | |
---|---|---|---|
![]() |
Functions
Type | Name | Description | |
---|---|---|---|
![]() ![]() |
void | AddReferencedObjects
(
UObject* InThis, |
|
![]() ![]() |
T * | Templated convenience function to return a significance manager cast to a known type. | |
![]() ![]() |
USignificanceManager * | Returns the significance manager for the specified World. | |
![]() ![]() |
const USignificanceManager::FManagedObjectInfo * | GetManagedObject
(
const UObject* Object |
Returns the managed object for the passed-in object, if any. Otherwise returns nullptr. |
![]() ![]() |
USignificanceManager::FManagedObjectInfo * | GetManagedObject
(
UObject* Object |
Returns the managed object for the passed-in object, if any. Otherwise returns nullptr. |
![]() ![]() |
const TArray< FManagedObjectInfo * > & | GetManagedObjects
(
FName Tag |
Returns objects of specified tag, Tag must be specified or else an empty array will be returned. |
![]() ![]() |
void | GetManagedObjects
(
TArray< FManagedObjectInfo* >& OutManagedObjects, |
Returns all managed objects regardless of tag. |
![]() ![]() |
float | GetSignificance
(
const UObject* Object |
Returns the significance value for a given object, returns 0 if object is not managed. |
![]() ![]() |
const TArray< FTransform > & | Returns the list of viewpoints currently being represented by the significance manager. | |
![]() ![]() ![]() |
UWorld * | GetWorld () |
|
![]() ![]() |
bool | QuerySignificance
(
const UObject* Object, |
Returns true if the object is being tracked, placing the significance value in OutSignificance (or 0 if object is not managed) |
![]() |
void | RegisterManagedObject
(
FManagedObjectInfo* ObjectInfo |
Internal function that takes the managed object info and registers it with the significance manager. |
![]() ![]() |
void | RegisterObject
(
UObject* Object, |
Overridable function used to register an object as managed by the significance manager. |
![]() |
void | UnregisterAll
(
FName Tag |
Unregisters all objects with the specified tag. |
![]() ![]() |
void | UnregisterObject
(
UObject* Object |
Overridable function used to unregister an object as managed by the significance manager. |
![]() ![]() |
void | Update
(
TArrayView< const FTransform > Viewpoints |
Overridable function to update the managed objects' significance. |
Overridden from UObject
Type | Name | Description | |
---|---|---|---|
![]() ![]() |
void | BeginDestroy () |
Called before destroying the object. |
Classes
Type | Name | Description | |
---|---|---|---|
![]() |
FManagedObjectInfo |
Enums
Type | Name | Description | |
---|---|---|---|
![]() |
EPostSignificanceType |