Search Issue Tracker


Fixed in 2020.2.X



Found in



Issue ID




[Metal][iOS] GPU crash when warming up shaders with DOTS_INSTANCING_ON keyword



Reproduction steps:
1. Open the user's attached project
2. In the Project window select "Assets/ES/BuildConfigurations/iOSClassicBuildConfiguration" and click "Build and Run" at the top of the Inspector
3. Deploy the project to a device
4. Observe the Xcode console

Expected result: no errors show up in the console
Actual result: error can be seen in the console: "Execution of the command buffer was aborted due to an error during execution. Caused GPU Hang Error (IOAF code 3)" or "Execution of the command buffer was aborted due to an error during execution. Invalid Resource (IOAF code 9)"

Reproducible with: 2020.2.3f1
Could not test with: 2018.4.31f1, 2019.4.19f1 (project contains custom packages that break upon updating), 2021.1.0b3 (project fails to build due to build errors), 2021.2.0a3 (same as 2019.4.19f1)

Devices reproduced with:
iPhone 6 (iOS 12.4.8)
iPhone 7 (iOS 12.3.1)
iPhone 12 (iOS 14.1)

1. Entering Play Mode in the Editor in the "ShaderVariantLoader" Scene throws an error: "Metal: constant buffer state is invalid."
2. Although on 2021.1.0b3 the build fails, the errors in Play Mode are not present
3. Enabling Metal API validation throws this error in the Xcode Console: "validateFunctionArguments:3469: failed assertion `Vertex Function(xlatMtlMain): missing buffer binding at index 5 for unity_DOTSInstanceData[0].'"
4. Not reproducible on macOS

  1. Resolution Note:

    Fixed in 2021.2

  2. Resolution Note (fix version 2020.2):

    Fixed in 2020.2.7f1

Add comment

Log in to post comment

All about bugs

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