Works in Unreal Engine 5.0 to 5.8. Updated October 2026.
Quick answer: Unreal runs its shader compilers at below-normal priority, so Windows gives them less CPU time than other programs.
- Open
C:\Program Files\Epic Games\UE_5.x\Engine\Config\BaseEngine.ini(replace 5.x with your version). - Search for
WorkerProcessPriority=-1and change it toWorkerProcessPriority=0. - Save, restart the editor, and add ShaderCompileWorker.exe to your antivirus exclusions.
Shader compiling should now finish many times faster.
Step 1: Raise the shader compiler priority
By default WorkerProcessPriority is -1 (below normal). Setting it to 0 (normal) lets the shader workers use your CPU properly.
- Go to
C:\Program Files\Epic Games\UE_5.x\Engine\Config. - Open BaseEngine.ini in a text editor running as administrator (the Program Files folder is protected).
- Press Ctrl+F, search for
WorkerProcessPriorityand set it to0. - Save the file and restart Unreal Engine.
[DevOptions.Shaders]
WorkerProcessPriority=0
Updating or verifying the engine in the Epic Games Launcher can replace BaseEngine.ini. If compiling gets slow again after an update, check this value again.
Want to test first? While shaders are compiling, open Task Manager, go to Details, right-click ShaderCompileWorker.exe and choose Set priority > Normal. This only lasts until the workers restart, so use the ini change for a permanent fix.
Step 2: Exclude Unreal from antivirus scanning
Your antivirus scans the files the shader workers create, which slows them down. You can often see this in Task Manager: the antivirus uses a lot of CPU while shaders compile.
For Windows Defender:
- Open Windows Security > Virus & threat protection.
- Under Virus & threat protection settings, click Manage settings.
- Scroll to Exclusions and click Add or remove exclusions.
- Click Add an exclusion > Process and type
ShaderCompileWorker.exe. - Add
UnrealEditor.exethe same way.
Step 3: Let Unreal use more CPU cores (optional)
On CPUs with many threads, Unreal keeps part of them free so your PC stays responsive. If you don’t mind a slower PC while it compiles, lower PercentageUnusedShaderCompilingThreads in the same section of BaseEngine.ini (for example from 50 to 25). Lower means more cores compile shaders.
Why does Unreal compile shaders so often?
Compiling shaders is normal the first time you open a project, after an engine update, after adding new assets or a content pack, and after editing a material. Unreal saves the results, so the next time you open the project it is much faster.
FAQ
Is it safe to change WorkerProcessPriority?
Yes. 0 is normal Windows priority. Avoid higher values: they make the rest of your PC sluggish while shaders compile.
Why does Unreal compile shaders every time I open the project?
Usually a material is missing a usage setting that Unreal fixes on load but doesn’t save. Search the Output Log for “needed to set usage flag” and save the materials it lists.
What does “failed to delete old shader autogen file” mean?
Nothing to worry about. Unreal tries to delete an old file before writing a new one, and logs this when the old file isn’t there.
Do these settings speed up packaging too?
Yes. Packaging uses the same shader workers, so it benefits from the same priority and antivirus changes.