unity UGUI text font size对性能影响较大

Font Size对ugui text的性能影响非常大。

《Cube Duck Run》在itouch5上测试是很流畅的,但是在iphone5上测试,在game over后显示历史最高分时却总会卡好几秒,导致游戏体验极差。使用屏蔽法查了两天终于找到了问题的原因,原来显示历史最高分的text的font size设成了150。其实本来font size为50就够了,但是由于text的父节点上有个0.3倍的缩放,所以导致text的font size设成150其大小在屏幕上看起来才会适,当初编辑界面的时候只顾“看上去对”了,而没有意识到这样做带来的性能灾害。于是把父节点的scale由0.3改为1,再将text的font size改为50,再测试就不卡了。

----补充:

以上事故便引出一个原则:如果ui树上的一个节点不是非终端节点,一定要保证它的scale值>=(1,1,1)

假设不遵守上面原则,哪点一不小心在一个scale<(1,1,1)的节点或其子孙节点上加上个text子节点,导致程序卡成狗并且又想不到是什么原因造成的,就悲剧了。

有些时候为了移动设备上的性能,可能需要故意用一个较小的font size再加上缩放来达到想要的文字大小,虽然这样会导致文字发虚,但也是必要的取舍。

原文地址:https://www.cnblogs.com/wantnon/p/4823604.html