After working a bit with blueprints, there are some things that kinda bother me quite a bit. They are namely:
1. Visual Cues For Local and Public Variables
In the visual scripts, it would be nice if we can see if the variable is local or global. Sometimes I have to review BP scripts that are not checked in because it may break the game so they send in the stuff via SnagIt/ScreenPresso/<insert screen capture tool here> of the visual script. The trouble is sometimes I don’t know off the bat if the thing is a local or global variable so it makes for some interesting correspondence where I need to ask questions that could have been avoided if I had that visual cue. I know there if the left panel but at times there are so many local variables it is not feasible to screen capture every scroll of the variables pane on the left.
In terms of C++, what we usually do is this->bPublicOrGlobalVariable to show that it is public and when there is no “this” prefix, it is a local variable for the sake of consistency. At least in my world, it makes things a whole lot more readable. What would be nice would be some sort of prefix in the variable either in the get or set nodes like say:
Same as now
Has something like [Local] as a prefix in the nodes or in the title of the node, have an italic text that says Local variable for MyFunction.
2. Visual Script Export to JPG/BMP
Sometimes when we wanna brainstorm, it would have been nice if we could have exported the visual script as a JPG file and share it to the team so we can be on the same page. It is really awkward when we have to either huddle in front of one screen or at times screen share over team viewer/Google Hangouts.
3. Expanded tooltip on variable type dropdown
Currently, the mouse tooltip over the variable type does not show what type is the variable. No biggie if you haven’t used it but if you have, it is greyed out and it tells you a message, albeit a helpful one that it can’t be changed. This is problematic especially if you have prefixes for certain actor types such as “cover_type_destructable_full”, “cover_type_destructable_partial” and the like because the drop down will only show “cover_type_destr”. Which one is it? This is especially annoying when the guy who did it (at times myself) forgets.
4. Blueprint export to C++
Items 1 to 3 are would what I consider as MUST HAVE, this is more like a nice to have and also I understand this is probably going to be a pain in the ****.
What at least I do would be that a lot of the stuff is done in blueprints to prove out the code in blueprints as it compiles faster and all that good stuff. After that, it will be ported over to C++ for the sake of performance and also it takes up lesser space in my Git repo plus we get to do diffs in Git. It would be really cool if you guys can have the ability to export this as C++ so we can optimize it ourselves as when it is done in BluePrints, the logic/algorithm is already in place and we just need to trim the fat.
This is something like what Dreamweaver and Visual Studio does with the HTML writer, would be even cooler if you can have a split view between blueprints and C++ like they do as well.
This is more for convenience and would also be good for people to learn up Unreal Engine and transition better to C++.
Thanks for reading this and I would also like to give a big thumbs up to you folks as Unreal Engine enabled me to live the dream of making a video game and pulling me away from the dreary world of business app development.