There are subsystems in Unreal that can be instantiated automatically.
However, the subsystem can only be inherited and implemented in C++. The purpose of this plugin is to create and use the subsystem directly in the blueprint.
Official subsystem description reference:
Plug-in operation instructions:
Right-click to directly create the corresponding blueprint.
When using, directly get the blueprint name_C node to get the corresponding instance object.
For example, the blueprint name is BP_DTGameInstanceSubsystem
The way to obtain it is as follows:
It is recommended to restart the editor after the window instantiates the blueprint, otherwise there may be multiple repeated Get options.
After it can be used, it needs to be enabled in the settings, so that it can be run after packaging.
All blueprint subsystems created must be added to it to be active.
|DT Subsystem||Unreal Engine|
|Game Instance||DT Game Instance Subsystem||UGameInstanceSubsystem|
|Local Player||DT Local Player Subsystem||ULocalPlayerSubsystem|
|World||DT World Subsystem||UWorldSubsystem|
After the blueprint is created, the plug-in will automatically generate some callback nodes, which are helpful for logic processing. The following is the description of the nodes:
Common Node Description：
On Initialize：initialization of instances of the system
On Deinitialize：deinitialization of instances of the system
On Tick： Event called every frame, if ticking is enabled
World Subsystem Exclusive Node Description：
On Post Initialize：Called once all UWorldSubsystems have been initialized
On World Begin Play：Called when world is ready to start gameplay before the game mode transitions to the correct state and call BeginPlay on all actors
On World Components Updated：Called after world components (e.g. line batcher and all level components) have been updated
On Update Streaming State：Updates sub-system required streaming levels (called by world’s UpdateStreamingState function)