Hello all, I have an issue with materials in UE4, I think it starts when I updated engine to 4.17 and till 4.22 this issue still exists. Every time when I modify material it starts to recompile the whole shader, and it takes near 70 seconds, even a simple change of color takes that long. I search every corner of Google to fix this problem, and there is no real solution. Can someone help me with this?
The amount of shaders that need to compile depends on the complexity and shading model of your material.
It helps to use a SSD aswell
What you want to do is to not “hardcode” the color, but instead use a Material Parameter which you can tweak in the Material Instance.
When changing a color, it marks the Material and thus the shaders as outdated.
This is not bad, that’s actually good.
I understand what you mean with best practices when working with shaders, but this is nothing to do with my problem.
For example, me and my friend test how long it takes to change color in freshly created material with our current setups.
Test example:
-> create a new project -> create new material -> create V3 node and plug into base color -> compile shader -> change color.
So it’s not just my imagination then as I’ve found it’s gotten a lot slower since some version after 4.15 im guessing. I had been using unreal up to around that point well over a year ago and since returning more recently everything takes ages to compile.
Worse though is it causes whole system stuttering and even freezing at times which never happened before. This is pretty unacceptable behaviour to hog all the cpu to the point you can’t even browse the web or do basic tasks and have it running in the background. I was trying to find some way to lower cpu priority to fix this?
The system hasn’t changed and everything else runs as good. So it’s got to be something different with the engine or possibly win10?
After several hours of reinstalling previous UE4 versions, I can confirm 4.18.3 is the last version where material editor working as it supposed to be, starting from 4.19.2 every newly created material starts to recompile itself after a simple color change. Still, need help from competent guys about this issue, seem like there are many people affected by this problem.
Interesting i’ve just installed that version to test. I don’t want to speak too soon but i’ve added different content packs and so far it seems to be less aggressive with taking over the computer. No stuttering or freeze ups. I can actually move around the viewport while compiling. Will do more testing but it’s looking like something changed since that version.
Now i wonder if this will be considered a bug and looked at by the devs. I hope it’s not simply ignored like a lot of issues posted on the forums.
I recorded a quick performance comparison of material editor in different UE4 versions. For both tests, I’ve created fresh projects and freshly installed UE4 engines. [HR][/HR]4.8.3
Can’t believe, I found a solution after a year of suffering, for some reason a software called “incredibuild” is the main source of the problem, I just killed it with fire, and the problem is gone. Now I have 2 seconds compile instead of 120. Hope it helps some people. Looks like “incredibuild” services interfered with windows defender or this is the problem of “incredibuild” itself.
Odd im not sure why but my project today had to recompile everything and i’ve not touched it in a week. Don’t think there’s been any updates im aware of. Taking stupidly long as usual. We really need some sort of fix.
What’s incredibuild and where can i find it to disable it? There’s nothing in task manager i can see.
Shader compiler has this problem, because it’s set to low CPU priority.
I made a simple test with a BAT file that temporally “solves” this slowdown: wmic process where name="ShaderCompileWorker.exe" CALL setpriority "above normal"
If you launch this BAT when shaders are compiling it will significantly speed it up.
I think it only affects older CPUs. Unreal tends to be designed and tested for modern workstations with cutting edge CPUs and a ton of RAM, so bugs like this remain unfixed.