Hey guys, I’m using both binary build downloaded from Epic Games Launcher and source build from github.
As it’s known to all that for C++ programmer using unreal engine, if you want to debug game code to track those tricky and nasty bugs, you better use “DebugGame” build configuration in IDE. This will disable most C++ optimization so that you can correctly use “step into” for find bugs.
However, “DebugGame” only disables optimization for “Game” code. Then how about debugging engine code with optimization off for better stepping into? Well, as far as I know source build engine is inevitable in this case. Build configuration should be “Debug Editor” which means both “Engine” project and “Game” project turn off C++ optimization.
It seems that everything works fine now? Not exactly.
First of all, we use source bulid engine doesn’t mean that we want to modify engine code. Some purposes need it, for instance, linux server build requires source bulid, or like I mentioned above, stepping into engine code to see what’s going wrong. Under such circumstances we won’t modify any engine code.
Secondly, as a consequence of source build engine, using “DebugGame” configuration C++ build takes visible longer time then binary’s “DebugGame” when modifying game code, which slows down iterations significantly. I have to switch to binary build for faster iterations, but this means that I have to download 2 engine with same number version in my disk at the same time, which takes a lot of space undoubtedly. In the mean time switching to binary build requires right-clicking .uproject then switch engine version then IDE needs reindex those code, which also takes time.
In conclusion:
- I don’t modify any engine code, source build is required for some purposes, such as single stepping.
- Source build’s “DebugGame” much slower compared to binary build.
- leave only one engine of same version in machine to save disk space.
So is it possible to just use source build with some special opeations, such that use build configuration (customed or not) similar to “DebugGame” to make C++ code build process skip engine C++ code checking for faster build time but still capable of stepping into debug engine code?