UGUI可优化的性能 总结一下有下面几个吧:
1.网格重建
2.合批 节省drawcall
3.填充率( overDraw像素重新绘制)

网格重建(两个网格重建:单个UI,合批完的整体UI网格)

网格重建就是ui有修改 需要重新绘制网格
如果是单单重新绘制当前UI性能还没什么消耗 但往往为了节省drawcall我们都会搞合批这个东西
但搞合批 就是把能合批的UI都做成一个网格 这样就会导致一个ui修改需要重新绘制整个合批网格 性能消耗还是比较大的
那这里应该怎么优化呢 这就需要了解合批的一些东西了 Canvas 是 负责管理UI渲染和合批的
实际开发中大多数游戏都可能是存在多个UI界面的:普通的界面,弹窗界面,弹窗界面可能还能出来一个提示窗口(恭喜获奖,确认界面)
如果说所有界面都用一个canvas 重建网格的消耗可以说是非常大的是吧 那我们可以用好几个Canvas
这样就可以减少网格重建的性能消耗 但这样也会增加drawcall
所以用几个canvas还是要看项目的需要 一般控制在5个左右最好

合批

合批的基本规则:depth 是否大于 等于0,materialID一样, textureID一样,两个渲染的图片中间没有任何图片

特殊mask合批:如果和另外一个mask的materialID, textureID一样 mask的子物体也能合批 但不能相交
rectMask2D: 比mask更节省性能 本身并不占用drawcall 被裁剪的部分不会计算顶点 和其他mask的子物体是没办法进行合批的
而想要不同的图片materialID一样, textureID一样 这就是图集的作用了

填充率

填充率: Fill Rate(填充率)是指显卡每帧或者说每秒能够渲染的像素数
overDraw 一个像素被多次绘制 会导致填充率不够用导致的卡帧 或者CPU和GPU的占用率过高
Unity_UGUI 优化篇
没必要重合的地方不要重合
unity中scene视图可以查看overDraw的情况

相关文章:

  • 2021-07-31
  • 2022-12-23
  • 2022-01-14
  • 2021-05-31
  • 2021-04-13
  • 2021-04-16
  • 2022-02-16
猜你喜欢
  • 2021-11-06
  • 2021-11-19
  • 2021-11-27
  • 2021-06-18
  • 2021-11-10
  • 2022-02-19
相关资源
相似解决方案