当前位置:   article > 正文

简单粗暴的告诉你Unity绘制优化的原由---合批_unity spine 合批

unity spine 合批

图集动态合批

图集
在这里插入图片描述

常直观的看到同一图集的sprite 在默认材质球的条件下Unity进行了动态合批
注意看 batches 此时只有一次
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
有四个 材质在使用,确调用了5次Pass通道,原则来讲一个shader中一个pass最好效率最高
原因:
在这里插入图片描述
两个Canvas 绘制 里面是TextMeshPro 和 Default UI 材质各调用 “1次”
在这里插入图片描述
这四个动态合批 用的都是 Sprite-Default 默认材质 SetPassCall “1次”

在这里插入图片描述
角色和敌人 本身 用同材质 SetPassCall 用同一个 但是因为 Trail Render的材质不同,所以又多了一次从中间中断 “3次”

以上就是 SetPassCall 5个的原由

Unity 绘制顺序是按照 Hierarchy 层级从上而下的这里有个注意的地方
在这里插入图片描述
敌人和角色都是使用精灵格式材质 按照Hierarchy绘制顺序他两的Pass是同一个 Trail 不是 所以这里有两个PassCall
在这里插入图片描述
下面在放一个敌人Pass就被Trail隔断了要再调用一次Pass变成了三次

在这里插入图片描述
hierarchy 不会打断合批绘制

总结优化方式

hierarchy 层级顺序影响材质SetPass Call数量,不会打断图形绘制的动态合批,但是中间插入不同绘制会打断合批。

材质球不会打断绘制合批,不同的绘制(图像数据CPU到GPU)交叉会打断合批。

打图集进行动态合批减少CPU向GPU发送图像数据(顶点数据,UV数据)绘制次数
  • 1
  • 2
  • 3
  • 4
  • 5
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/blog/article/detail/48605
推荐阅读
相关标签
  

闽ICP备14008679号