Unreal Engine
Unreal Engine CI on GitHub Actions
Shader compilation dominates and there is no derived data cache in CI.
48m → 12m
Shader compile
90m → 34m
Cook
Shader compilation dominates and there is no derived data cache in CI.
Why it happens
The DDC is empty on each run, so every shader permutation compiles from scratch.
What to change
- Point the shared DDC at a persisted directory and cache it
- Use a 32 vCPU runner — shader compilation is embarrassingly parallel
- Cook only the platforms you are shipping in that job
Unreal Engine on runnerhut
yaml
jobs: build: runs-on: runnerhut-32vcpu-ubuntu-2404 steps: - uses: actions/checkout@v4 with: { lfs: true } - run: ./Engine/Build/BatchFiles/RunUAT.sh BuildCookRun -project=Game.uproject -platform=LinuxThe only runnerhut-specific line is `runs-on: runnerhut-32vcpu-ubuntu-2404`. Everything else is standard GitHub Actions — the same actions, the same secrets and the same permissions model you use today.
Your next build could be twice as fast, at half the price
Start free. Migrating away is the same one line, and we publish that diff too.