Search Issue Tracker
Fixed in 2017.1.X
Votes
36
Found in
5.4
Issue ID
815861
Regression
No
CanvasRenderer.OnTransformChanged is called on disabled UI objects
When a transform with children CanvasRenderers is changed/moved CanvasRenderer.OnTransformChanged is called for all of them even if they are disabled causing huge CPU spikes.
The project attached contains a scene with 1000x4 such objects. Profiler shows a lot of time wasted in CanvasRenderer.OnTransformChanged every frame.
Comments (7)
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
- “Remove Unused Overrides” available on not loaded Scene and throws “ArgumentException: The scene is not loaded” warning
- Adaptive Probe Volume occlusion edge is calculated incorrectly when viewing probes near geometry edges
- Sampling a texture using an HLSL file throws shader errors and the code does not compile
- "Graphics.CopyTexture called with null source texture" error when Base Camera of an Overlay Camera is removed with DX11 Graphics API and Compatibility Mode enabled
- WebGL sends wrong value with large numbers when SendMessage function is used
k_belonogov
Mar 23, 2017 16:59
Thanks, Unity! It works in 5.5.2p4
k_belonogov
Mar 23, 2017 14:02
Unity 5.6.0f1 - nothing has changed :(((
CanvasRenderer.OnTransformChanged - 4000 calls
Froghuto
Jan 10, 2017 15:06
This makes using the UI system in VR projects (ui's that move with the camera) impossible. Please fix this!
Lszt
Jan 06, 2017 11:04
Issue exists on Unity 5.3 too and probably before this. Please it could be nice to do something or at least review this.
k_belonogov
Dec 16, 2016 06:17
There is not so good but working workaround. You can place inactive children from moving node to static one.
zbyhoo
Nov 08, 2016 17:29
Is there ANY workaround for that? I have really big performance problems because of that on iPad 3.