So far I keep encountering insanely long compile times for a basic, barely put together project.
For example here are the following issues that I encounter which ends up resulting in 5-10 hour re-compiles.
- Deleting a c++ file (in this case include cpp/h)
- Results often in a total re-compile of the project for unknown reasons. Even when the file wasn’t being used by anything at all.
- Usually thousands of files.
- Moving a c++ file
- Results in a total re-compile of the project, even if the file wasn’t in use anywhere
- Usually thousands of files.
- Creating a c++ file
- This usually isn’t too terrible and the IDE & UHT seem to figure it out. However what happens is;
- Make the class in UE
- IDE pops up & ‘live coding’ I guess does a small compile.
- Then you need to refresh the project in the IDE and close it.
- Close the editor next
- Re-open IDE and make your actual changes
- Re-compile project (THIS in my experience is the ONLY short-lived compilation, meaning it’s usually only a few files, not thousands.)
- This usually isn’t too terrible and the IDE & UHT seem to figure it out. However what happens is;
- Adding a component via C++ to something that already has a blueprint child in-project
- It appears that UE doesn’t ever pick up that you’ve added the component
- Results in wiping everything already compiled in the project trying to trouble shoot why UE doesn’t see the component
- Thousands and thousands of files being recompiled. No idea why.
So here I am, once again just trying to troubleshoot why UE doesn’t see anything as if it doesn’t exist. That process thus far was;
- Delete the Binaries folder
- Delete the Intermediate folder
- Re-generate the project files
- Run Compile on the project in my IDE
The new total is now 4205 files. Look, I’ve basically written around 20 files, not thousands. Last time it did this it was around 3100 files or something.
I’ve set the compilation system to use every available ounce of 64gigs of ram and all of my Ryzen 9 processors.
Still I am looking at hours and hours waiting to see, if UE can actually see anything. It’s rather mind-boggling to me to think that anyone, in this day and age, would expect to work like this. Is there some secret super computer that studios have that magically compiles things faster?
Why would my project’s files for compiling magically bloat by a thousand more, when I’ve not added any to that scale?
Watching the compile as I write this, why is it re-compiling things like UnrealEditor-ConsoleVariablesEditorRuntime.dll when I’ve not made any changes to that or any of it in any shape or form?
To me, it looks like it decided to recompile the engine itself, which shouldn’t be the case as I specifically told it to compile the project. Also, the engine itself if I were to recompile it, would be 12000 files and take 24 hours.
I guess I just don’t fully understand the scope here;
So I’m compiling a ‘project’ version of the ‘editor’, but why and how would it change from 3000 to 4000 when I’ve done literally barely anything since the last project compile? Usually my project actually compiles about 1000 files if I delete the binaries & intermediate folder. Which fortunately only takes 30 minutes.
Why am I forced to delete the folders, does UE have that much of a dog-biting-bone issue with ‘ghosts’? Sure seems to.
I guess I don’t understand why when I literally define something specific the UE can’t seem to understand it unless I wipe from orbit and rebuild from scratch. It seems very silly to me.