I know this question has been asked by newbies a million times. Every time a veteran tells him it’s normal, nothing to worry about it. But this is exactly what stops people like me to make the first step into the amazing world of Unreal.
Since Unreal 4.x, until today’s Unreal 5 Preview 1, every time when it got a fresh install on the computer with absolutely no projects, no starter content, no any extra options installed, just the barebone UE4/5, the first time when you start the editor, it always takes 40 minutes to 5 hours to compile 2000-8000 shaders for an empty scene, with CPU being 100% occupied during the whole time. Sometimes when a UE update came out, this process happens again. Sometimes when you make absolutely no changes to your scene, it happens again. And everyone seems fine with it.
Some users replied:
"The default sky sphere is material/shader driven. The box your default pawn spawns on in the center of your screen has a material too. The camera’s editor mesh has a material applied, even though it’s hidden in-game. Then you have the default lights and such. (not to mention there’s also other things, like default engine content that is available even if starter content isn’t added to the project, but hidden from view)
Some people came up with hacks to edit INI files, or increase the priority of the worker instance, or even developed scripts to handle this issue. Is it possible for the team to handle it from the root?
Since UE team knows this handful of contents (less than a dozen? Def far less than 8000+ shaders from a blank scene) will be loaded almost every time, can they be included in the installation after they are compiled? So that they don’t have to be compiled every time? Our devs are the smartest people on earth. They can break polycount limitations, they can def do this!
People asked a million times, why does UE have to compile shaders when there is absolutely no shader in the scene? Can you compile only the used ones? Can you compile not at the time when the program starts, but when these shaders are loading into the scene? Can you show a placeholder shader to let users know that this shader is currently being compiled? Or, can you show more information about what is currently compiling instead of just the simple text of “45% - Compiling Shaders (8,348)…”
UE team is so capable that they are almost always the greatest driving force to push us so much closer to the actual matrix, but you are telling me that they can’t fix this single thing that wastes so many hours of millions of developers and hobbyists and people who want to dive in, each day for the past years, and an unknown number of years in the future? I just can’t believe it.
It’s NOT normal. The fact that everyone is used to it is NOT right! This is not who UE team truly is!
Thank you for your input. Our community is the best!