(二)unity中的渲染优化技术——————(减少draw call数目 方法二:静态批处理、共享材质、批处理的选择)

本文探讨了Unity中减少draw call数目的两种方法:静态批处理和共享材质。静态批处理虽然能有效提高效率,但可能导致内存占用增加。实验展示了启用和禁用静态批处理对内存的影响。共享材质通过图集和顶点数据调整实现微小差异,同时注意使用Renderer.sharedMaterial以避免破坏批处理。最后,提出了选择动态或静态批处理的建议,强调了批处理的注意事项。
摘要由CSDN通过智能技术生成

一、静态批处理

相比于动态批处理来说,静态批处理适用于任何大小的几何模型。它的实现原理是,只在运行开始阶段,把需要进行静态批处理的模型合并到一个新的网格结构中,这意味着这些模型不可以在运行时刻被移动。但由于它只需要进行一次合并操作,因此比动态批处理更加高效。静态批处理的缺点在于,它往往需要占用更多的内存来存储合并后的几何结构,这是因为,如果在静态批处理前一些物体共享了相同的网格,那么在内存中每一个物体都会对应一个该网格的复制品,即一个网格会变成多个网格再发送给GPU。如果这类使用同一网格的对象很多,那么这就会成为一个性能瓶颈了。例如一个使用了1000个相同树模型的森林中使用静态批处理,那么就会多使用1000倍的内存,这会造成严重的内存影响。这种时候,解决方法要么忍受这种牺牲内存换取性能的方法,要么不要使用静态批处理,而使用动态批处理技术(但要小心控制模型的顶点属性数目),或者自己编写批处理的方法。

现在做个实验,我采用了静态批处理:

在playerSetting->Other Settings中勾选Static Batching,然后运行项目查看profiler:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值