Unity UI 系列第七章:ScrollRect 列表与虚拟滚动优化
📜 Unity UI 系列第七章:ScrollRect 列表与虚拟滚动优化
💡 列表优化的核心:
- 大量列表项如何优化性能?
- 虚拟滚动的实现原理是什么?
- 对象池在列表中如何应用?
- 如何实现高性能的无限滚动?
系列第七章,深入讲解 ScrollRect 列表与虚拟滚动优化!
合批规则合批三元素
重叠,需要程序员手动去处理,尽量不重叠,如果有重叠,尽量将形同层次的组件都重叠上去.
material.id shader尽量保持一致,material 尽量保持一致,不一致尽量将其放在一个单独的层次,减少动态切换 material,新建material ,复合 material ,material 里面的图片尽量不要大于 3 张.
texture.id 图集处理,RawImage 使用的图片与图集使用的图片是无法合批的,可以动态使用图集,增大内存,减少 CPU 压力
工具已在项目中提供
重叠
2 个 button 交叉重叠,造成 4 个 dc,原因是 2 种材质交叉重叠了.
要牢记重叠导致打断合批的原因是材质重叠,不是指 UI 框重叠,是渲染状态被打断了.
使用线框模式查看,要查看一个线框是否与另外一个线框相交,相交的线框如果材质不同,则产生打断合批的情况
相交的线框如果材质相同,并且中间没有其他的材质,则不会打断合批.
单个图片没有参与图集中,就是一个 DC,就是相当于一种类型的材质了
一种字体就是一种材质,相同字体可以被合批.
转载请注明来源,欢迎对文章中的引用来源进行考证,欢迎指出任何有错误或不够清晰的表达。可以在下面评论区评论,也可以邮件至 1487842110@qq.com
本文是原创文章,采用CC BY-NC-SA 4.0协议,完整转载请注明来自新诸子
