Search Issue Tracker

Fixed in Unity 2019.2



Found in


Issue ID




[iOS] On-device Shader compilation hangs ~10% of the time on the specific project




Priority: 2Necessary for shipping a final release


Severity: 1Crash, freeze, data loss, work stops

1 out of 10 times the player freezes when warming up shaders.
This also happens at runtime when the shaders just get compiled on a device, but warming them up is a more reliable way of reproducing the hang.

Reproduction steps:
1. Open the attached project (archive password is provided in the edit below).
2. Make sure Platform is set to iOS in the Build Settings.
3. Go to Window > Builder Menu.
4. Click "Load config file".
- Select the file named "XSDeadLockReproConfig"
- Wait for the editor to recompile the code.
5. Click "Build XCode Project".
6. Reboot the mobile Device.
7. Build the Xcode project to a device.
- It should be in the "Build > iOS > Output" folder.
- If you'll encounter Game Center related errors, turn off and on Game Center in the Capabilities settings.

Expected behavior:
- Spinner shows up

Actual behavior:
- Loading spinner doesn't show up after 5-60 seconds
- Application freezes
- Reproducible ~10% of the time (Repeat steps 6 and 7)

- Project size is ~3gb.
- The project uses a custom builder and it doesn't work on 2017.4, 2018.1, 2019.1 and 2019.2 versions of Unity.

Tested with:
- iPhone XS, iOS: 12.1 - Reproduced after 9 tries
- iPhone XS Max - Reproduced after 5 tries
- iPhone X, iOS: 12.1 - Not Reproduced

Reproduced on Unity 2018.2.13f1 and 2018.3.3f1

All about bugs

View bugs we have successfully reproduced, and vote for the bugs you want to see fixed most urgently.