You don’t override OnPaint
, you override NativePaint
. See the UPROPERTY specifier called BlueprintImplementableEvent
? That means this is a Blueprint-only function that cannot be implemented in C++. NativePaint is the C++ equivalent.
In general with UE source code, when you see a function DoStuff
that’s a BlueprintImplementableEvent, you’ll likely find another function called NativeDoStuff
which is the C++ equivalent. If DoStuff
is a BlueprintNativeEvent, the C++ equivalent is called DoStuff_Implementation
.