Is there any advantage to using C++ in UE4?

I’ve been using blueprints in Unreal Engine for a bit over a year now and recently I decided to give the C++ aspect of Unreal Engine a try, I have to say that I’m extremely disappointed. Not only is it incredibly time consuming to do anything, even something as simple as prototyping, in C++ compared to in blueprints, but it doesn’t seem as if there is anything one could do in C++ that one could not in blueprints. Infact, it seems as if C++ is utterly useless in UE4. I have attempted to make several projects in 4.16.1 using C++ however all of them either end in my deleting them out of frustration due to constant compiler errors or crashes during compilation/editing that are nonexistent when utilizing blueprints.

As of now I’m feeling a bit frustrated and so I realize that the opinions relayed above are biased heavily against C++ development in the engine, however, I’d like to hear what others have to say on the matter.

For me it is much easier to implement, debug, maintain complex code in C++, beside getting full psrformance design time. For simple stuff BP is great, but all my classes are C++ based.

But since C++ allows for access through-out the engine, which parts are heavily C++…?

Just 2c on this: I’ve never been as productive in C++ as Scripting / Visual-Scripting / Rapid application type Dev.
Some use the word ‘Fussy’ about C++. But I think that doesn’t go far enough, more like ‘truly high maintenance’.
But then you see a dev like @sivan say: There’s no real difference, its easy to be productive in both no problem!
So there most be personality at play or something here. Even some creative artists prefer coding to visual too???

If only that was true. You can’t really do anything custom without C++. Have a read here

I have needed to port some blueprints to c++ for performance or maintenance reasons. Everytime I have notices about 10x performance. Also complex spaghetti node web has turned to neat and clean c++.

@franktech]( :

  • in a FPS/RTS project I do calculation intensive functions for AI in C++ (selecting best target, aiming with accuracy, group movement setup, formation positioning, managing objects of interest etc.), but using BT and BP decorators/tasks/services too, it is quite a flexible approach.
  • my other project is an own RTS pathfinder + movement system purely C++, requiring game level geometries to be processed to get the necessary database. it would be a nightmare implementing with BPs, and very slow without the nativizing process… only artist related stuff is blueprinted.


I am working with Unreal Engine C++ for sometime now but I agree with you that Unreal Engine has issue of crashing when developing with C++. Blueprints are really good for easy stuff, but according to me the larger the components or the project becomes harder it is to manage the m, but in C++ this is no the issue. Managing large projects/components is easy.


Depends, on the type of person you are. You may want to use blueprint or the other.

Blueprints and Unreal C++ are (for the most part) equally expressive. The benefit to writing code over using a visual scripting language is that, if you know what code to write, you can do it much faster than by clicking through blueprints. Something that takes 5 nodes in Blueprints might condense down to 1 line in C++.

Also, when you start to have really large blueprints, it gets hard to organize things in a way that makes sense. With code, large codebases are common and can be organized and maintained more easily.

As mentioned earlier, managing complex code is much easier in C++. Editor made custom structs are is broken in 4.16. Blueprintable structs are also easier to manage in C++ and they wont corrupt blueprints when edited and C++ has big benefit of being much more performance friendly which starts showing in larger projects what cannot be overlooked at.

You could write a complex line of code in C++ in 6 seconds, that would be the equivalent of an entire page/screen in blueprints in a few minutes. Multiply that over years of developing a game and you can get a significantly more amount done in C++.

I use C++ and build blueprints on top, and although I’m quite fluent in both, I feel like a snail when building up a blueprint. C++ however requires much more knowledge to avoid compile errors and crashes, so it’s got a learning curve but it very worth it in the long run.