当前位置: 首页 > news >正文

Unity Spine优化思路

最近终于闲下来了,于是开始把近期探索到的unity相关优化整理起来。

我们的项目采用的人物表现方式是spine动画,这在2D游戏里算比较常见的解决方案了,但是里面有一些设置需要提前注意一下,否则会造成不必要的性能浪费。

养成读官方文档的习惯

官方文档详细介绍了耗性能的点,每个组件的使用方式和需要注意的一些选项,传送门:spine-unity 主要组件

spine导出格式应当使用.skel.bytes而非.json

无论是从加载速度还是从包体大小,前者都要优于后者,spine至今还留着.json的导出格式可能是为了兼容旧版本工程。

skeleton graphic里的enable separation和multiple canvasrenderers最好不要勾选

对于正常项目,是没有multiple canvasrenderers的需求的:

如果勾选了这两项(注意,勾选其中一项是不会产生实际作用的,所以必须同时勾选才能发挥其价值),则可能会造成打断合批的现象:

原因在于,官方给这个接口的目的是匹配多张texture,如果atlas texture分为多张,就需要用到这两项设置,这是导致断批的罪魁祸首。出于性能方面的考虑,最好尽可能地避免这样做.。在UI中使用的Skeletons应被打包成一个single-texture (单页) atlas,而非多页atlas。

禁用SkeletonRenderSeparator

这在很多项目里都完全没必要使用,除非是打算做精细化2D项目(伪3D),否则不需要考虑类似的层级穿帮问题,甚至说使用这种骨骼层级分离器会一定程度加大spine的复杂度。

善用spine软件下的修剪功能

修剪按钮可以一定程度削减网格数,进而达到不影响外观表现的情况下减小内存开销。


http://www.mrgr.cn/news/51278.html

相关文章:

  • 【Flutter】Dart:环境搭建
  • c++项目中无法跳转到头文件/无法搜索到头文件
  • 北京大学冯惠:与卓越者同行,方能更快的成长 | OceanBase数据库大赛获奖选手访谈
  • C++的忠实粉丝-继承的热情(1)
  • 51单片机LED驱动
  • vulnhub靶场之digitalworld.local: MERCY v2
  • TestNg
  • 汽车结构设计外覆盖件抗凹分析的评价指标
  • 【智能算法应用】引力搜索算法求解二维路径规划问题
  • C语言函数重制版(内含指针串讲)
  • LeetCode :LCR 173. 点名
  • 进程信号大总结(整理)
  • React Agent 自定义实现
  • STM32-USART串口协议
  • 奖金——Topsort
  • 《RECONX: RECONSTRUCT ANY SCENE FROM SPARSEVIEWS WITH VIDEO DIFFUSION MODEL》论文阅读
  • 记录 ruoyi-vue-plus在linux 部署遇到的问题
  • 【Python爬虫实战】XPath与lxml实现高效XML/HTML数据解析
  • MySQL索引优化
  • 【Next.js 项目实战系列】03-查看 Issue