一 注意事项
DrawCall是每次CPU向GPU调用绘制操作的过程 每调用一次就会产生1个DrawCall
不同的材质会产生不同的DrawCall
二 使用批处理优化DrawCall:
1.静态批处理
A.把物体设置为静态对象。运行时所有的静态对象只占用1个DrawCall
2.动态批处理
A.使用图集
没有图集的情况:
在UI中,不同的图片会产生DrawCall,如图1
图1中Game界面3个Batches,FrameDebug面板中可以看到绘制UI只产生了1次DrawCall
[图1]
而如果是不同的图片,则会产生2个DrawCall,如图2
Game界面Batches变成了4,FrameDebug界面看到绘制UI产生了2次DrawCall
[图2]
使用图集的情况:
但是如果是使用图集的话,则依然是同一张图片,所以只会调用1次DrawCall
现在将我的电脑和回收站两张图片打为1个图集,如图3
[图3]
此时再看DrawCall数量,已经再次为1了,如图4
[图4]
需要注意的是使用了图集,DrawCall只有在游戏运行的情况下才是正确的,因为非运行状态不会使用图集