Here’s some table which I started to create quite some time ago, not finished but maybe useful, so I share this one here.
| Function | Event | Macro | |
|---|---|---|---|
| callable from outside of blueprint | Y | Y | N |
| can contain latent nodes (e.g. delay, timeline) | N | Y | Y |
| can return values | Y | N | |
| wildcard variables | Y1 | Y | |
| Multiple (output) execution pins | N | Y | |
| Call to Event Dispatcher possible from within | Y | N | |
| Bind/Unbind event possible from within | N | ||
| Use with no execution pins | Y2 | Y | |
| Can use local variables | Y | ||
| Can be replicated | N | Y | |
| Child class override | Y | N | |
| Call Bind event | Y | N3 |
1 C++ UFUNCTION with CustomThunk for example allow to create wildcard array inputs.
2 use pure functions
3leads to “Bind Event to ED_endreached cannot be placed in macro graph”
Hi @ClockworkOcean, thanks for pointing this out. My table is quite old, from my beginnings with UE4. I updated the table. Would be great to get that table filled completely and rechecked. I’ll see if I can rework this. Any input is highly welcome.