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? ;)
asked Dec 24 '17 at 11:25 PM in C++ Programming
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.
Follow this question
Once you sign in you will be able to subscribe for any updates here