Need UE4 C++ Productivity Tipps...


first I want to say that I realy love the Unreal Engine, but I am very frustrated right now so the following things could read a bit like that I am not liking the Engine but thats not true… It’s only the C++ part which drives me crazy all the time because I feel that my issues there decreases my productivity so so much…

C/C++ was my first Programming language about 9 years ago. But today my main profession is Java Server & Web Development because my Jobs required me to focus on these things. Thats why I would say that I am spoiled with all the great Development Tools and IDEs for these Topics…
So now I have to arrange somehow with a (in my oppinion) horrible featureless Visual Studio and a huge slow C++ IntelliSense Code base…
In addition to that I feel that Unreal tries to work “against and not with me” with all the special rules from the Unreal Build and Header Tools.
Then it also gets even worse when I forgot to check for null sometimes and the whole editor crashes and I have to wait a long time again until my Editor starts up… Just to see that I placed this mistake in some Actors within the Scene so that this whole crap shuts down right away again on startup…

I already tried Vissual Assist but also this is taking half an hour to start up until it’s working fine…
My friends (artists and designers) love Unreal and Blueprint but our Project takes so so long to develop, only because of me and my stupid Visual Studio / UE4 Productivity issues which feels realy bad and right now we think of switching back to… “some other popular^^” Engine and buy Visual Scripting Plugins for that Engine because my Productivity Speed with the other Engine is actualy a 100 times faster…

Do you guys have some tipps how to somehow improve my UE4 C++ Productivity by a lot because I realy love all the Unreal Features in comparrision to the other one?

Kind regards,

Here’s a method I found recently that increased my productivity by roughly eight billion percent, if you’re just making code changes and don’t need the editor at the time.

At the top of VS there should be a dropdown that says UE4. Switch it to your project name instead. On the command line box next to it, enter this:
“D:\Unreal Projects\MyProject\MyProject.uproject” -game
Using your project path instead of course.

The result is that when you compile your project with that drop down (instead of the UE4 one), after compile it will automatically launch a standalone of your game with debugging enabled. It’s identical to if you had ran the editor and hit Play, except because it’s just a standalone, it turns on in seconds, making it very handy when there’s crashes or you need to keep doing quick code iterations and tests.

Also, any errors/crashes are shown right in VS. Super handy.

Write your base classes and complex logic in C++ and do as much as possible in Blueprint derived classes to cut down on compiles. You can always move logic back to C++ later if needed. When I first started I wanted to do everything in C++ but that’s a tough road to travel.

Learn unreal framework more. When i first try c++ in unreal without real knowledge of api, it was pure pain. Trying to make everything work by trying in c++ takes really much time because of compile times and editor restart. I started to use blueprint and had a lot of fun maybe for a year. Later, i tried c++ again and it’s way better to me, because i know framework more and it’s like writing code c++ instead of blueprint. If you find yourself compiling and trying your code a lot, just make it in pure blueprint if it’s possible because iteration times are way faster, then move your code to c++. That’s my 2c.

And you can use HotReload functionnality to not have to restart your editor also.

Yeah, and then you get nice side effects like corrupted blueprints that are unfixable except for remaking them from scratch.

Yeah that’s right!. as Zeblote said, never trust in HotReload, but it is very useful to debug standalone functions really fast, and then migrate that to your classes, One thing I used to do, is prototype in blueprints, this only takes some few days and worse case some weeks, and then you can migrate everything to c++, in my job we make all modules, so you can image my pain dealing with plugins all the time, but knowing well the API is your best bet, regarding to Visual Assist basically is the only way to go, I don’t know but in my machine works as fast as hell!!!

Thanks guys for the answers :slight_smile:
I guess I will try out some of that stuff, but I am already doing a lot of things you recommended like only base classes in C++ and then creating blueprints from that.
The issues I have is within the Base Native C++ Implementations most of the time.
For example yesterday (was quite a good day for me)… I finished the basics of my Save/Load System in C++ and all this is Blueprint Accessible. And for those 3 Classes it took “only” 3 hours…
Where 2 and a half hour was only figuring out what the compiler errors (which are weirdly translated into my native language) are complaining about and fixing these… And this is so hard because you can not google these translated messages if they relate to a unreal header rule or something like that…

So maybe it’s like you guys said… Just have to learn more about unreal and get along with it^^