UGUI的性能从三方面来优化
一、从CPU方面优化
1、重建界面:
- 尽量减少Rebuild的频率,将动态和静态的元素分离,放到不同的Canvas里面
- 使用尽可能少的UI元素。这里指的是删除不必要的节点和隐藏不用的节点。这样能减少深度排序和rebuild Layout的执行时间
2、触摸事件
对应不需要接受输入的元素。一定要关闭Raycast Target选项
3.UI的隐藏和显示
UI切换的时候,有两个地方非常耗时,一个是SetActive,另外一个则是SetParent。
SetParent暂时没有好的处理方法
SetActive可以在切换UI的时候。不把UI 设置SetActive(false),而是设置UI的Layer。
给需要隐藏的设置一个canvas,单独设置相机,对update等脚本做控制
4.减少DrawCall
https://www.cnblogs.com/murongxiaopifu/p/4284988.html dc更多是优化cpu的效率,减少cpu调用图形接口的开销
- 合批
图集
相同材质,相同纹理对象相邻
注意控制层级号
- 避免或减少Mask的使用,1个Mask至少增加两个DC
二、从GUP方面优化
原因:
- 造成GPU的性能瓶颈一般在复杂的sh