1.检测DrawCall是否改变
Game窗口中的stats可以清晰的看到DrawCall
2.渲染顺序
控制好U3D的渲染顺序,才能控制好DrawCall
示例
3.动态批处理
如果动态物体共用着相同的材质,那么Unity会自动对这些物体进行批处理。
4.静态批处理
静态批处理比动态批处理更加有效,你应该尽量低使用它,因为它需要更少的CPU开销。
5.材质
只有拥有相同材质的物体才可以进行批处理。
6.打包图集
1.每个材质/纹理的渲染一定是会产生DrawCall的,这个DrawCall只能通过打包图集来进行优化。
2.图集打包需要将要打包的图集全部放入一个文件夹中,才能进行正确的打包
3.图集打包好之后,使用相同图集的物体只会产生一个DrawCall
详细的关于打包图集的知识请参考我刚刚发的文章图集(基础使用与定义)_drgfd345的博客-CSDN博客
7.特效清理
1.技能特效,或者其他什么特效,那么特效播放完,这个特效我们就看不到了,但假设这个特效在播放结束的时候,没有将自身的Active属性设置为false,那么它就会继续占用你的DrawCall,消耗你设备的计算能力
2.程序需要保证当一个特效播放完之后,能够被消耗,或者设置为非激活的状态,可以使用一些公共方法来完成特效播放完之后的清理工作