I have a roguelike game: it’s 2D, uses pixelart sprites and is written entirely using blits to the UI in unity.
Because I heard that 5,2 was going to give better performance through better batching I took an fps count by turning off vsync in the quality settings and running the game in the unity editor. I was getting about 330 fps.
After upgrading to 5.2 I tried it again and was only getting 130-160!
Is there something I might have missed or has UI performance actually got worse in 5.2?
edit: I admit though, I was using just the start button in unity itself, I wasn’t using “build and run”. I’m trying to test the game under both unity versions right now but I’m suffering from another problem: that 5,2 doesn’t seem to go full screen to 1280x720 anymore but stays in desktop res.
I don’t know if its the performance in my case I use many buttons in the bg and now they are not responsive like before in the editor. On an device I have no issue at all.
All our tests have showed the UI is now much more performant. If you’re experiencing something different a project would help (i.e. report a bug and post the bug number)
5.2 is performing alot worse than 5.1 due to a number of bugs… The switch to meshes in 5.2 has caused a memory leak everytime a mesh is updated / changed…
on the plus side, once these minkies are fixed, the UI will be performing alot better! Batching & Meshsupport has made a huge difference to our drawcalls & vertex count numbers! I’m looking forward to the next few patches! Keep up the good work UI Team
My app (which uses much ui and scroll) on unity 5.1 have 40-50fps on unity 5.2 only 18-20fps.
I can not understand where is the improvement of this version.
We are getting degraded performance with the new UI as well - along with a lot more artifacting on masked elements. Hopefully the next patch fixes it! Excited to see if we get increased performance over 5.1 builds as we use the UI extensively in our project.
As we’ve said in this thread and others, there are fixes on their way for a patch release soon. Issue was related to some dumbness in our scroll rect calculations. The perfomance improvements in 5.2 are in the batching (c++ side), not in the UI system itself.
Just tried Unity 5.2.1 released Sep 22nd and I have the same 20% frame rate loss (iPad2) as 5.2.0p1 over 5.1.3. across a range of our screens which do not use scrollview.
Look forward to the patch with the fix so that I can check to see if my issue is the same as the one you’ve identified and fixed or if I need to sort out a repro project.
I can confirm Unity UI performance degradation, when I’m instantiating GameObjects with UI sometimes the screen freezes, in most cases just crashes the editor. Profiler shows this:
0.67gb in Font.InvokeTextureRebuilt_Internal() ¬_¬
I just downloaded 5.2.1p1 , and it seems they have changed OnPopulateMesh(Mesh m) to OnPopulateMesh(VertexHelper vh) - 5.2 is just not worth bothering with , no mention in the docs about this, no update of the UI source code on bitbucket… what a total joke.
Get your act together Unity. Quit messing us around with undocumented STUPID changes - that vertex helper class sucks, I deliberately didn’t use it when I upgraded to 5.2 because of all the memory allocation, and now you force us to use it? Keep things STANDARD , use a MESH.
I’m sticking with 5.1 , giving up completely on 5.2 until they stop messing us around.
Thanks for the thoughts, I agree about sticking to 5.1.x and waiting for the 5.1.4 final release before fully upgrading from 4.6x…Seem anyone on the forums who complains or trys to get some answer from Unity gets number of unity fan boys on his back…Althought many things are done right, many are slow progress also… All i got say is there was a poll in the beta section should 5.2 be released and majority vote was noo until stable…
5.2 is BETA - the UI is utterly broken. I’ve wasted enough time beta testing it already.
Making OnFillVBO obsolete and replacing it with OnPopulateMesh fair enough, it was required for the mesh switch over. But making OnPopulateMesh obsolete two weeks later is just plain messing people around.
I feel sorry for the people who have to keep their store assets up to date, it must be a nightmare for them.
Since TextMesh Pro is closely tied into the Canvas system, Unity 5.2 has been an interesting ride thus far. I am certainly looking forward to the next few patches and hoping Unity is done with API changes.
Whenever Unity makes significant API changes, as Asset Developers we are simply caught in the crossfire. It is unfortunate that some users don’t realize how these changes affect us. Too often they presume the fault lies with the Asset developer when in reality we have to wait for patches like all other users to address the issues affecting our products.
It will take a few patches for Unity to iron out those issues in Unity 5.2 but in time we will get there. It is just unfortunate the migration to Unity 5.2 hasn’t been as smooth as previous releases.