Blueprints

How many of you out there heard “Let’s go back to our C++ code” and were like “Hallelujah!” :slight_smile: I wish Unreal would have kept Unreal script or offered a more universal scripting language like Lua as another option for us programmers out there as I’ll admit that Blueprints kind of broke my brain for a bit trying to understand the “visual coding” style. Something that I could have coded in no less than 10 lines required many boxes and lines that I had trouble following. Guess like anything else it will get easier with practice but plan to steer away from it whenever possible as it just seems like it will cause me to create a huge tangled unmaintainable mess that is difficult to debug.

I also saw that in UE5 there may be a return to a scripting option with “Verse”.

1 Like

I feel the same way. I prefer C++ code as much as possible and wish I didn’t have to have so many blueprints (feels like I am forced to sometimes). Lua would have been nice. Took me a little bit to figure out the visual scripting, but I can see the ease of connecting pins. Maybe there are times when certain flows are easier to understand visually (like UML diagram), but I find it to be rarely the case. Most functions are linear and are easier to read in text. Plus: source control. copy/paste, source lookup (can see how engine code was written), find/replace, refactor…

2 Likes

After having worked with blueprints a bit more they make a lot more sense. I still get a little confused on exactly what happens at runtime with all the nodes that don’t have execution pins as there are a lot of nodes that just extract data fields. I think of it as a stack of operations that get lazily evaluated once the execution pin referencing the graph of those nodes becomes active. The “Unreal Blueprints” course has helped me learn it a bit better so far. Sometimes the function I want is only first discoverable in Blueprints (as most tutorials and examples use them) but using the “search” feature in Visual Studio directed me to the engine code which gave me pointers to C++ classes that I could use to replicate the same functionality in C++.

1 Like

Privacy & Terms