[Tutorial] Unreal C++ Delegates In Blueprints

Our goal in this tutorial is to make a C++ Delegate (Event Dispatcher) that other developers can use and see in Blueprints. Designers/Developers should be able to bind to this delegate and call their desired functions when it’s broadcast.

Choosing The Correct Delegate Type

Anytime you want your C++ code to work with BP, it has to support reflection.   The keyword is Reflection, and of the four types of delegates listed, only 1 supports Reflection.


According to the Documentation, Dynamic Delegates are Delegates that can be serialized and support reflection. This is the only type of C++ delegate Blueprints will see and bind to. 


Unreal Engine has so far 4 Types of delegates in their Documentation. They are Single Cast Delegates, Multi-Cast Delegates, Event Delegates, and Dynamic Delegates.