Hello everyone, I am currently learning blueprint via paid training from Evans Bohl for those who know, and I was wondering what a macro is actually used for and what is the difference with a function?
They look very similar on the surface, but there is a fundamental difference: All the macros in your code get replaced by the actual code before the game is run ( just like a text replacement ), whereas only one copy of a function is loaded, and any code that calls it is routed through it at run time.
There are a lot of other differences, for example
1 You can have multiple entry and exit execution pins on macros
2 Functions handle short circuit exiting more gracefully
3 You can write recursive code with functions ( not recommended ), but not macros
4 You can’t have ‘latency’ in functions ( like delay nodes )
5 etc…
I’m sure someone else can chime in.