Member-only story
Creating a subsystem to load/save games in Unreal Engine 5 with C++
In this tutorial, we will create a simple subsystem to handle saving and loading games.
You can follow the tutorial in the video:
If you want to see the final result, download the code here (CoffeShopSim project):
https://github.com/bluebubblebee/CoffeShopSim
What’s a subsystem?
A subsystem in Unreal Engine is like a special helper that manages specific tasks or systems within a game. It is very similar to a singleton, where there is only one unique instance of each subsystem.
Subsystems can be used to save game data, manage audio, handle player input, or even deal with online features.
They are perfect for creating modules and isolating functionality, making your code cleaner and reusable.
Unreal Engine already has some subsystems:
- Engine: Inherits from UEngineSubsystem class
- Editor: Inherits from UEditorSubsystem class
- GameInstance: Inherits from UGameInstanceSubsystem class
- LocalPlayer: Inherits from ULocalPlayerSubsystem class