What does the macro ProjectName_API do?

See this page

From what I know, it basically exports functions that are marked with the macro (or all functions in class if class is marked with this macro) so they can be used outside of the module they were declared in. If you know, that you won’t use given class outside of the module you develop it in (for example if you write customizations for details panels in editor), you don’t need to export that functionality to other modules.

It increases performance a bit, but I’m not sure if just a compilation/building will be faster, or if a game will run faster too.

2 Likes