Search Issue Tracker
Won't Fix
Won't Fix in 5.5.X, 5.6.X
Votes
5
Found in
5.5.1p3
Issue ID
905722
Regression
No
[iOS][Metal] Parsing shaders takes a very long time with 'Compiler connection failed' error on iOS 8
iOS 8 devices fail compiling shaders with 'Compiler connection failed' error.
Steps to reproduce:
1) Open the latest attached project (905722_iOS8.zip).
2) Build for iOS.
3) Run on a device.
4) Press the UI button on the screen.
The button press should load another scene. On iOS devices, it takes around 15 - 20 seconds to load 'Compiler connection failed' error is logged in Xcode's console along with some shader code after the scene has finished loading.
On iOS 10 devices, the scene loads immediately.
This doesn't occur with OpenGL ES.
Reproduced on:
2017.1.0b3, 5.5.1p3
Test devices:
iPhone Plus 6 iOS 8.0
iPad Air iOS 8.1.1
iPhone 5S iOS 8.2.2 - reproduced by the user
Add comment
All about bugs
View bugs we have successfully reproduced, and vote for the bugs you want to see fixed most urgently.
Latest issues
- Audio Mixer does not change volume when lowering volume on an Audio Mixer loaded from AssetBundles
- Error “Value cannot be null. Parameter name: key UnityEngine.GUIUtility:ProcessEvent (int,intptr,bool&)” thrown and Addressables build fails when "Include in Build" is disabled and using Addressables For Android package
- “error CS0433: The type 'CodeBinaryOperatorType' exists in both 'System.CodeDom and 'System" compilation errors are thrown when opening a specific project
- Metal Vertex Shader warning is being thrown when creating a VR Template Project
- Asset database warning is thrown when declaring font variable in the USS text file
hyunlee
Aug 24, 2017 06:57
There is a workaround that makes Metal compatible with ios 9 or newer.
[UnityAppController+Rendering.mm]
static int SelectRenderingAPIImpl()
{
#if UNITY_CAN_USE_METAL
- const bool canSupportMetal = _ios80orNewer;
+ // HL: hotfix
+ const bool canSupportMetal = _ios90orNewer;
#else
const bool canSupportMetal = false;
#endif
...
}
Unity version: 5.6.1p3
Test devices:
iPad Mini3 (8.3) - OpenGLES, no problem
iPhone6 (10.3.3) - Metal, no problem
iPhoneSE (9.3.2) - Metal, no problem
o2361800
Aug 08, 2017 15:33
same problem; reproduced in 5.5.3p1 & 5.5.4p2, affects single device (ipod a1574) running ios 8.4.
It occures when automatic graphics api setting is on (on this device Metal will be default); when OpenGL is forced, it won't occure.
Problem exists even on empty scene + only cube with default Standard shader (cube must be inside camera's frustum).