OK I’m new to Unreal but finding blueprints a fun and easy way to get started. But then it’s a big jump into C++ to get to the power of the Unreal engine.
I do have a background in IT and I have previously worked with Visual Design and Programming tools.
The best ones let you design your code visually and generate the code for you in the background. But they can also read the code and generate the diagrams for that code.
So what would it be like if you can have blueprints created from C++ code and generate C++ code from blueprints.
Not only do blueprint developers get a great way to learn/transition into C++ coding in Unreal but they also get the benefit of being able to compile faster native code.
Well, at the end blueprints are translated to code, and code to machine code so what you say is happening in one or another way.
I think would be good to be able to generate C++ files based on the BP classess, but you can do complete games, without limitations in pure blueprints, chek my signature to see some examples.
One of the best points of this system is that you can use C++ and BPs togueder so really there are no limitations.
Autogenerated textual output from a node-based language will never be something you want to read or learn from. It’s one step up from a disassembly listing.
Almost all Blueprint nodes are actually C++ function calls, and you can see what they are and how they are implemented by right-clicking and choosing “Goto code definition”, which will jump to the C++ code in Visual Studio or XCode if you have it synced (from 4.7 on, we ship with the source in the binary build also).
However, if you want to view the linear textual result of a compiled Blueprint and see what I mean, you can enable debug backends. In your DefaultEngine.ini, add the following and change any of them you are interested in to true:
This will dump the output to the log each time you compile. The text backend is something that looks a bit like C++, but it’s a debugging-only view and is never normally used. The bytecode is what is actually executed.