Search Issue Tracker
Fixed in 2018.3.X
Votes
1
Found in
2018.2.0b2
Issue ID
1033895
Regression
No
[UI] Removing or disabling CanvasScaler corrupts UI which cannot be undone
To reproduce:
1. Download attached project "BugReport_UI_Canvas_Odd_Behavior.zip" and open in Unity
2. Open "Scene" scene
3. Move "Canvas 2" into "Canvas 1" in Hierarchy window
4. Select "Canvas 2" and disable or remove the "CanvasScaler" Component
5. Observe how this affects the size of the green image, which is part of "Canvas 1"
6. Click Edit > Undo or Ctrl + Z couple times until it undoes your changes
7. Observe it undoes the blue image size, but the green image size keeps corrupted
Notes:
- This issue appears both on Windows and OSX
- Removing or disabling the CanvasScaler Component of Canvas 2 should not affect elements of Canvas 1
- Undo functionality should work always, it should properly undo both, the green and blue image sizes
- If you select corrupted UI, set "UI Scale Mode" to "Constant Pixel Size" or "Constant Physical Size" and then reset it to "Scale With Screen Size", everything fixes up
- Setting Canvas.scaleFactor of a child canvas will scale the parent canvas
Reproduced on Unity 5.6.5p4, 2017.1.3p4, 2017.2.3f1, 2017.3.2f1, 2017.4.2f2, 2018.1.0f2, 2018.2.0b3 and 2018.3.0a1
All about bugs
View bugs we have successfully reproduced, and vote for the bugs you want to see fixed most urgently.
Latest issues
- Crash on ShaderLab::ShaderState::ApplyShaderState when entering Play Mode and calling ShaderWarmup.WarmupShaderFromCollection with a shader that has dynamic_branch
- Crash on operator delete[] when a serializable structure in the System namespace is serialized by a MonoBehaviour
- [macOS] forward and backward mouse buttons are recognized as middle mouse button
- NavMeshModifier.OnEnable/OnDisable gets progressively slower when called repeatedly
- "System.Net.CookieContainer" throws an "ArgumentException" error when using a non-UTF-8 machine locale and hostname
Add comment