U3D批处理的静态与动态

在屏幕上渲染物体,引擎需要发出一个绘制调用来访问图形API.每个绘制调用需要进行大量的工作来访问图形API,从而导致了CPU方面显著的性能开销。

Unity在运行时可以将一些物体进行合并,从而用一个绘制调用来渲染他们,这一操作,我们称之为“批处理”。一般来说,Untiy批处理的物体越多,你就会得到越好的渲染性能。

材质

只要拥有相同材质的物体才可以进行批处理。因此,如果你想要得到良好的批处理效果,你需要在程序中尽可能地复用材质和物体。

如果你的两个材质仅仅是纹理不同,那么你可以通过纹理拼合操作来将两张纹理合成一张大的纹理。一旦纹理拼合在一起,你就可以使用这个单一材质来代替之前的两个材质了。

动态批处理

如果动态物体共用者相同的材质,那么Unity会自动对这些物体进行批处理。

动态批处理操作是自动完成的,并不需要你进行额外的操作。

批处理动态物体需要在每个顶点上进行一定的开销,所以动态批处理今支持小于900定点的网络物体。

静态批处理

相对而言,静态批处理操作允许引擎对任意大小的几何物体进行批处理操作来降低绘制调用(只要这些物体不移动,并且拥有相同的材质)。因此,静态批处理比动态批处理更加有效,你应该尽量使用它,因为它需要更少的CPU开销。

为了更好地使用静态批处理,你需要明确指出哪些物体是静止的,并且在游戏中永远不会移动、旋转和缩放。想完成这一步,你只需要在检测器(Inspector)中将static复选框打勾即可。

静态批处理和动态批处理打上勾 如下图

在这里插入图片描述

在这里插入图片描述

Profiler性能分析器 可以查看draw call

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值