Unity性能优化降低DrawCall

 
1. Z轴归零
RaceJob与BaseCell 两个对象实例化后, Z轴不为0. 代码中强制为0.
原理: Z轴不为0的UI, UGUI 不会对其自动排序.

2. 头像UI去除Mask, 同时降低DrawCall与Overdraw
使用Custom Image 直接截取其UV 值, 而不是通过 Mask 对其图片进行截取.
不但将降低了Mask 的DrawCall,  而且图形在网格部分保证了不会出现重叠导致UGUI 对其排序产生影响.

3. 优化会频繁Active 的界面
在购买完英雄后, 会覆盖变灰的UI. 节点Recruited 会设置为True. 
现在将该节点长设为True, 然后透过透明度将该节点隐藏. 可提升设置该节点被设置为Active后照成的UI 合批中断与SetActive本身的消耗.

4. 对Buttom 的Image 使用PolygonImage 代替, 因为尽管这个Image不显示. 但还是会产生DrawCall. 
   使用PolygonImage可以不产生UI 的 Mesh , 这样完全不产生任何渲染消耗

5.  对头像边框的Image控件中的FillCenter 勾选去除.
由于9宫格头像边框中间是透明的, 因此中间部分不用渲染, 效果是一样的. 这样可以显著降低其Overdraw

6. 对不参与交互的Image中的Raycast Target 勾选去除.

7. 回收角色对象上的UI,  减少该类对象的创建数量!
   比如选人的特效!

上一篇:GPU分析工具RenderDoc使用


下一篇:PHP5.6中php-fpm的配置、启动、关闭和重启