Unreal has two UFUNCTION()
specifiers that allow C++ to call functions whose behaviour is defined in Blueprint subclasses: BlueprintImplementableEvent
and BlueprintNativeEvent
.
At first glance they look kind of like the same thing, BlueprintImplementableEvent
The Basics
BlueprintImplementableEvent | BlueprintNativeEvent | |
---|---|---|
Define function behaviour in Blueprints | ✅ | ✅ |
Define function behaviour in parent C++ | ❌ | ✅ |
However there is a well-used paradigm in the engine for creating BlueprintImplementableEvent
functions that do have a base C++ behaviour