Date: 2022-03-25
- 问题分析:
- 当加载背包cell节点数量过大时,出现的加载和滑动卡顿
- 解决方案: 降低drawcall
- 使用自动图集或者TexturePacker把碎图打包, 多个渲染纹理合并, 多个渲染指令一次执行
- 文字不使用系统文字,可以使用图片字替代,并且合图
- 尽量不要在cell组件内使用Mask裁剪, 可以将Mask放在外部, 例如在ScrollView上单独一层, 同步cell组件的位置, 避免打断自动合批
- 分帧异步加载, 可以使用协程或者定时器等异步加载节点
- 节点cell复用, 只保留屏幕显示的下的cell数量+1
离屏区域不做渲染,setVisible(false)节点cell快照, 只适用于cell内没有动态效果的情况下, 在添加节点时, 将cell节点的纹理通过camera和RenderTexture截图出来, 渲染到一个单一节点里, 再加载到ListView中, 加载的时候会慢, 但后续滑动会快很多