Search Issue Tracker
Fixed in 2021.1.X
Votes
0
Found in
2018.4
2019.4.10f1
2021.1
Issue ID
1281129
Regression
No
[iOS][Metal] Shaders with tessellation are not compiled when displacement feature is removed from #pragma
How to reproduce:
1. Open the attached 'iTestCase.zip' project
2. Switch Platform to iOS in Build Settings
3. Build for iOS and open the Xcode project
4. Deploy Xcode project to an iOS device
Expected result: The blue cube is displayed in the Scene and no errors are thrown to the Xcode console
Actual result: Scene is empty and 'program_source:199:50: error: assigning to 'float4' (vector of 4 'float' values) from incompatible type 'threadgroup half4' (vector of 4 'half' values) output.COLOR0 = input.cp[controlPointID].COLOR0;' error it thrown to the Xcode console
Reproducible with: 2018.4.27f1, 2019.4.13f1, 2020.1.9f1, 2020.2.0b7, 2021.1.0a1
Reproducible with:
iPhone 8+ (iOS 12.0)
iPhone XR (iOS 13.4.1)
iPad 9.7’ 6th gen (iOS 14.2)
Not reproducible:
macOS 11.0 Beta Big Sur
Notes:
- Reproducible on Metal, not reproducible on Open GLES 3
- Shader is taken from the documentation: https://docs.unity3d.com/Manual/SL-SurfaceShaderTessellation.html
- Shader works fine when the displacement feature is included #pragma
- When using displacement, Unity Shader Compiler does not include COLOR semantic to Mtl VertexOut and ControlPoint structs
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
- Missing script error when clicking “script” link in Cave scene’s Water Sample Description
- [VFX Graph] Set Position Shape Gizmo isn't refreshed after shaper switch
- NullReferenceException is thrown when trying to access volumeStack from the HDCamera class
- Visual artifacts appear when using an Orthographic camera with a Reflection Probe
- Not all animation properties are accessible when a prefab with an avatar model contains a nested copy of itself with a renamed GameObject
Resolution Note (fix version 2021.1):
Fixed in 2021.1.0a5