
Speed Up Unreal Engine Development With Better Shader Settings
Tune BaseEngine.ini shader configs in Unreal Engine to cut compile times. Learn safe adjustments for threads, batch size, and worker priority.
This is Rambod and in this tutorial we’ll optimize Unreal Engine shader compile times by editing the BaseEngine.ini
config. Shader compilation is one of the biggest bottlenecks in Unreal development. By tuning [DevOptions.Shaders]
you can reduce waiting times, better utilize your CPU, and keep the editor responsive.
1) Locate the config file
- Find your Unreal Engine install folder.
- Example path:
C:\Program Files\Epic Games\UE_5.4\Engine\Config\BaseEngine.ini
- Open it in Notepad or any editor.
- Press Ctrl+F and search for
worker
. - You’ll land on
[DevOptions.Shaders]
.
2) Key shader config options
bAllowCompilingThroughWorkers=True
- Enables external worker processes for compiling.
- Uses multiple CPU cores instead of just one.
- Keep this true for performance.
bAllowAsynchronousShaderCompiling=True
- Allows shaders to compile in the background.
- Prevents Unreal from freezing while compiling.
- Always keep true.
NumUnusedShaderCompilingThreads=3
- Reserves CPU threads during compiling.
- Default leaves 3 free.
- Reduce to 2, 1, or 0 for faster compiles on strong CPUs.
- Lower values = faster compiles, but higher system load.
NumUnusedShaderCompilingThreadsDuringGame=4
- Same as above, but active while running a game.
- Keeps gameplay smooth by leaving extra threads free.
- You can reduce this cautiously if you want compile speed over runtime smoothness.
ShaderCompilerCoreCountThreshold=12
- Threshold to switch between fixed and percentage-based thread usage.
- If your CPU has fewer cores, Unreal uses the fixed counts above.
- If it has more, it switches to percentage mode.
- Lower this if you have 8–10 cores so Unreal switches earlier.
PercentageUnusedShaderCompilingThreads=50
- Kicks in when above threshold.
- 50% means half your cores remain idle.
- Lower to 20% or even 10% for big compile speed boosts.
- Always monitor system load when changing this.
MaxShaderJobBatchSize=10
- Controls how many shader jobs are grouped.
- Higher = fewer batches, more efficiency.
- Default 10, but you can push to 15–20 on multi-core CPUs.
bPromptToRetryFailedShaderCompiles=False
- Disables pop-ups when shaders fail.
- Keeps workflow smooth.
- Set to true only when debugging shader issues.
bDebugBreakOnPromptToRetryShaderCompile=False
- Debugger-only option.
- Leave false unless you’re hacking engine source.
bLogJobCompletionTimes=False
- If true, logs shader job durations.
- Helpful for profiling.
- For normal devs, leave false to reduce log spam.
ProcessGameThreadTargetTime=0.01
- Amount of game thread time used for processing shader results.
- Default 0.01 = 10ms per frame.
- Raise slightly if results feel too delayed, but don’t overshoot or gameplay will stutter.
WorkerTimeToLive=20
- Worker idle time (seconds) before shutdown.
- Lower = less background memory use.
- Higher = workers stay alive longer, useful for frequent compiles.
BuildWorkerTimeToLive=1200
- Same as above, but for automated builds.
- Default = 20 minutes.
- Reduces restart delays between compiles on build servers.
WorkerProcessPriority=-1
- Sets shader worker process priority.
0
= normal,1–2
= higher priority,-1
= lower priority.- Default keeps your system responsive.
- Set to 0 or 1 to boost compile speed if you can spare responsiveness.
3) Safe adjustments
If you want real gains without much risk, change these three:
- PercentageUnusedShaderCompilingThreads → 10–20.
- WorkerProcessPriority → 0 or 1.
- MaxShaderJobBatchSize → 15–20.
These will cut compile times significantly on modern CPUs.
4) Why this matters
- Shader compiling often eats hours over a project’s lifetime.
- Proper tuning makes iteration faster.
- You balance speed vs system responsiveness.
- Ideal configs depend on your core count and workload.
Wrap up
Now you know how to optimize shader compile settings in Unreal Engine. These tweaks don’t require plugins or code — just a small config change for huge time savings. Test values carefully, monitor CPU load, and find the sweet spot for your hardware.
For more Unreal Engine workflow optimization, visit rambod.net, subscribe on YouTube, or watch this tutorial here: Watch on YouTube.