C++ VS Blueprint


I’ve been messing around with UE4 since release, and I’m a little bit confused as to when I should be programming in C++ and when I should be using the amazing BP system. In the past, the line separating Kisment from Unrealscript was clear, and now it’s a bit confusing. Any information will be appreciated!

The general rule of thumb is to keep the Blueprint side coarse. You wouldn’t create a whole inventory or movement system in Blueprint, but you would expose some of its functionality, i.e. AddToInventory or OnMantleBegin would be nodes in Blueprint. C++ is great for efficiently solving problems, but doesn’t give our artist friends much room for love. If you can see a designer or artist leveraging a set of functionality it is probably time to start creating Blueprint nodes.

In general Bob_Gneu is right; but it does depend on your team composition. If your team is predominantly composed on non programmers then Blueprinting everything is an effective enough solution. If your team is heavily programmer focused, then I’d say go for a very strong C++ back end and expose functions and variables to Blueprints to allow quick iteration on game play designs. Lastly, if your team is a mix then you should decide what you want to expose. Exposing everything isn’t very helpful and you should almost consider Blueprint as another form of scoping in the same was public, protected and private are used.

That is very insightful, thanks Solid Snake (And Bob!)

I’ve felt the same way, I have my BP stuff at the very top of the header, then public, then protected, then private :slight_smile:


Very good points gentlemen, thank you for your input.