UnityTech / UIWidgets

UIWidget is a Unity Package which helps developers to create, debug and deploy efficient, cross-platform Apps.
Other
1.97k stars 256 forks source link

iOS Simulator poor performance #217

Open jdnichollsc opened 5 years ago

jdnichollsc commented 5 years ago

Hello guys, I'm testing the Samples of this project from a MacBook Pro (TouchBar 2017), and they are working well on Android, but testing from iOS Simulator the examples are very slow. Thanks in advance! 👍

KumoKairo commented 5 years ago

I have profiled it a bit and this lib is generally has poor performance, not suitable for mobile at all. It takes almost two seconds (!) to render one frame on my lower end device during the animation. It also has a hell lot of GC.Alloc code that sometimes allocates 250 KB (!) of memory every frame during animation.

665 ms just for scripts image

1738 ms to render a frame image

HOWEVER! This lib is a gem just because it's something new and absolutely unusual for Unity. It uses custom off-screen rendering to enable both runtime and editor applications (I have never seen anything like this "GalleryApp" inside a simple Unity Editor Window). It is definitely something worth spending time on.

zhuxingwei commented 5 years ago

Hi guys, thanks a lot for your kind advice !

Yes, since we are a very tiny team, we choose to work on only the functionalities at the beginning of this project and simply leave behind all the optimization jobs. This strategy helps us to finally make our first release on the 8th month of the development.

Now, for our next release, the performance optimization is among the top items on our todo list. Actually, we are already working on it for nearly 1 month and will push the codes to github asap when it is done. Wish we can close this issue then :-)

jdnichollsc commented 5 years ago

Thanks for this project folks! 🥇

zhuxingwei commented 4 years ago

We have just released a bunch of optimization early this month on GC allocation and rendering. Please try the latest UIWidgets and let us know how you feel. Cheers !