-
Notifications
You must be signed in to change notification settings - Fork 51
Home
Welcome to the Subsystem Browser Plugin wiki! Check navigation on right side.
Subsystems provide an easy way to extend engine functionality and implement new features.
Check Programming Subsystems article or this presentation slides if you haven't tried them yet.
Plugin provides a dedicated Subsystem Browser
panel to display active subsystems with property editor.
The new Subsystem Settings
panel provides an easy way to interact with Config properties in Subsystem-derived classes without need to create a standalone UDeveloperSettings
class.
There are several ways to install the plugin: from Marketplace and from GitHub.
- Find plugin in Unreal Engine Marketplace under
Code Plugins
category:Subsystem Browser Plugin
- Click on
Download
, launcher would download it for you to specified engine - Activate plugin in editor
Plugins
menu
- Download source code archive
- Latest development version: From main page
Clone -> Download ZIP
menu. - Marketplace version (may be a bit out of date): From
Releases
page.
- Unpack the contents into "YourProjectFolder/Plugins/SubsystemBrowserPlugin" (create if missing)
- Activate plugin in editor
Plugins
menu
CallInEditor functions are supported which means you can make a clickable button in details view that will execute a function in editor.
UCLASS()
class UMySubsystem : public UWorldSubsystem
{
GENERATED_BODY()
public:
UFUNCTION(CallInEditor, Category=Debug)
void DrawDebugInfo() { /* implement something */ }
}
If your subsystem class has Config
and DefaultConfig
specifiers you can export their data into associated ini
file by using Export to Defaults
context menu action.
With only Config
flag you can export ini section
to clipboard by using Export Modified
or Export All
context menu actions.
UCLASS(Config=Game, DefaultConfig)
class UMySubsystem : public UWorldSubsystem
{
GENERATED_BODY()
public:
UPROPERTY(Config, BlueprintReadOnly)
int32 NumActorsToSpawn = 0;
UPROPERTY(Config, BlueprintReadOnly)
TSoftClasPtr<AActor> ActorClassToSpawn;
}
Release packages are always updated to latest marketplace release version
You can find me on twitter @AquanoxTV or Unreal Source
Discord #cpp channel