C++ vs. C++&Blueprints

Hey, after one year of blueprintscripting I´ve started with C++, but I always have one question in mind:
Is it better create every class in c++ and don´t use blueprints or should I just create the parentclass in c++ and extend
the childclasses with blueprints? To be honest I´ve only seen the second method so far, but I think the first one should be more efficient. So which one is the real deal? :wink:

Hi MrZelektronz,

It depends on what you’re trying to accomplish and how complicated your game and logic are, as well as how you define the efficiency. If it’s a small game, then you might not even need to go to C++ as it will add a lot of unnecessary burden and hassle to you and your team. However, if you’re working on a bigger project where you need to implement a lot of complicated stuff, you should then try to create most if not all of the base classes in C++ and also handle networking and some of your game logic in there. For such big projects, your work can easily get messy and out of hand if you stick to Blueprints alone.

In general, C++ is faster than the interpreted blueprints. However, this doesn’t mean that you should not use blueprints at all. Unless you’re aiming for a heavy game for mobile platforms or you are certain that you will have lots of complicated and heavy computations, then you shouldn’t really worry much about performance and implementing everything in C++. In fact, some functionalities are better done in blueprints as it is way more convenient there and that alone outweighs the whole C++ implementation burden. You can always do the optimization and refactoring along the way or at the end of your project once you have your core components working.

So what’s a good practice? In my personal opinion, as you have also suggested it yourself, and also from looking at how Epic created some of its sample projects such as StrategyGame, it is safe to say that it’s best to implement the base classes and the networking part of your game in C++. It is also a good practice to handle some complicated player and camera movements logic in C++ while doing the rest of the work, such as spawnings, effects, sounds, etc. inside the blueprints.

Hope this answered your question.

Thank you, this answered many questions of mine

Absolutely brilliant way of explaining the answer.