Search Issue Tracker
Fixed in 2018.1
Fixed in 2017.3, 2017.4, 2018.3
Won't Fix in 2017.2
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.
- Nodes in the Vertex block are deleted when the edge connected to the Node is deleted
- Changes to instanced detail mesh material don't immediately apply
- [uGUI] Vertices retrieved from GetUIVertexStream method cannot be modified when adjusting them through script
- Scroll bar scrolls less in the Package Manager packages than elsewhere when pressing on the empty scroll bar area to scroll
- Undo.RegisterCreatedObjectUndo dirties the scene, but no actual changes to Scene are made