Unity UI 优化指南 (0.介绍)

Unity UI中的优化操作可能称为一门艺术。固定的规则很少,而是需要根据不同的情况进行仔细分析。优化UI性能的关键在于平衡draw call和批处理的消耗。尽管有一些方法可以用来降低draw call或者批处理,但是复杂的UI需要作取舍。

按照惯例而言,开始优化总是从剖析开始。在优化UI之前,应该先弄清楚观察到的性能问题的准确原因。对于Unity UI的性能问题而言,主要有下面四种:

  • 过度使用GPU的片元着色器(例如填充率过高造成)
  • 重建Canvas batch消耗过多CPU时间
  • 重建Canvas Batch的数目过多(过度重绘)
  • 生成顶点消耗过多CPU时间(通常是文字引起的问题)

从原则上来说,Unity UI的性能应该是由发送给GPU的draw call数目决定,但是从实践上来讲,引发draw call问题的项目通常是因为过度填充引发的问题。

这篇教程会讨论Unity UI底层的基本概念,算法和代码部分,同时也会讨论常见的一些问题和对应的解决方案。教程分为五个部分:

  1. Unity UI基础,将会介绍Unity UI中经常用到的一些术语,讨论渲染UI的基础过程中的细节,包括几何结构批处理的构建过程。强烈建议从这章开始阅读。
  2. Unity UI剖析工具,会介绍开发者用到收集性能数据的一些工具。
  3. 填充率,画布和输入组件,会讨论改进Unity UI的画布和输入组件性能的一些方法。
  4. UI控件,这一章主要讨论针对UI中的Text,ScrollView和其他的组件的一些优化方法,这些方法具有针对性,并不是对其他的控件生效。
  5. 其他的技术和提示,这一章谈论了一些特殊的优化方法,包括一些基础的提示和工作中会用得到的奇技淫巧。

P.S.
Unity UI源码的托管地址:https://bitbucket.org/Unity-Technologies/

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容