Alternative to UPROPERTY for Subsystem

Subsystems are not exposed to blueprint, so I can’t create a TSubclassOf UPROPERTY and assign it a blueprint asset via blueprint, which can then be used from C++. What is an alternative solution without the need of passing data to the subsystem from a different class like game instance?

Hi!

You can try developer settings for that.

Tom Looman has a good tutorial about that:

1 Like

yeah subsystems arent exposed to blueprint by default so you cant assign a BP class to a TSubclassOf in blueprint. workaround is make the C++ subsystem Blueprintable/BlueprintType so BP can see it, then the property shows up. Blueprint Subsystems Bridge does that plumbing for the 4 types so you can expose TSubclassOf etc directly in blueprint child class: Expose Game Instance Subsystem to Blueprint | Fab