Not at all, Blueprints are great and as I said in another thread, if it runs at your target framerate it doesn’t matter. But to say there’s no speed difference between C# and C++ is incorrect. Unity games aren’t too slow to run, but I’m saying that Minecraft is a perfect example of how Binary runs hella-faster than Bytecode - but that doesn’t mean that Bytecode is unuseable (though it definitely would be at Engine-Level).
As somebody pointed out, Unity (The Engine itself) is written in C++, C# is merely a wrapper that talks to the engine. C# in Unity also doesn’t really resemble C# at all, it’s Unity’s own ‘Version’ of C# with their own functions and callbacks etc. Even if we had full C# in Unreal, it still wouldn’t look anything like Unity.
I should clarify this. Blueprints compile to Bytecode, but it still runs the C++ functions as C++. The ‘Bytecode’ layer is for things that you may do natively in Blueprint like math operations etc, and also for all the calls to the C++ functionality. Best way to explain this is:
- You write some math in Blueprint using the native nodes, it runs too slowly.
- Instead, you can write a C++ function that does all of the above, and simply expose that function to Blueprints. At this point, it should run faster.
(This is as I understand it btw)