Search Issue Tracker
Fixed in 2018.1.X
Fixed in 2017.3.X, 2017.4.X, 2018.3.X
Won't Fix in 2017.2.X
Canvas Batching System Dirties Project User-Created Materials when using Rect Mask 2D
Steps to reproduce:
1. Open user attached project
2. Enable the "Rect Mask 2D" component on the "Panel" Gameobject
3. Play the scene, then stop the scene
4. Click the menu "File" -> "Save Project"
5. Open the "CustomMaterial" asset in a text editor and notice that it now has "UNITY_UI_CLIP_RECT" as a shader keyword, it is a persistent project asset and now dirtied by the system. This would cause it to show up as a changed file on all source control systems, confusing developers and causing confusing merge conflicts.
6. Now, DISABLE the "Rect Mask 2D" component on the "Panel" Gameobject
7. Again play the scene, then stop the scene
8. Again click the menu "File" -> "Save Project"
9. Again open the "CustomMaterial" asset in a text editor and notice the "UNITY_UI_CLIP_RECT" shader keyword is now gone.
Expected result: canvas batching system should not dirty project user-created materials
Reproduced in: 2018.1.0a3, 2017.3.0b8, 2017.2.0b1
Not reproduced in: 2017.2.0a4, 2017.1.2p3,
Regression since: 2017.2.0b1
Fixed in: 2019.1.0a13, 2018.2.0a3, 2018.1.0b8
All about bugs
View bugs we have successfully reproduced, and vote for the bugs you want to see fixed most urgently.
- [Android] Android build fails when targeting SDK 31 and using Build-Tools 31.0.0
- Sprite Atlas is compressed when Compress Assets on Import is disabled
- "UnityException: Unable to package apk Unity library missing for the selected architecture x86" error on android il2cpp builds
- Colors are not dilated on the edges when Alpha is Transparency parameter is enabled on the Texture
- Crash on GUIView::DoPaint when selecting color with a color picker