文章目录
CPU
1.动态批处理
优点:一切处理unity自动完成,物体可以移动;
缺点:限制很多,可能无法动态批处理一些使用了相同材质的物体;
原理:每一帧把可以批处理的模型网格合并,再把合并后的模型数据给GPU,然后使用同一个材质进行渲染;
如果使用了多个pass的物体需要使用多个光照,就会破坏动态批处理的机制,unity不会对其进行动态批处理;
2.静态批处理
优点:自由度很高,限制很少;
缺点:会占用更过的内存(因为共享网格的每一个物体都会对应一个该网格的复制品,如:1000个相同树的模型,会占用1000倍的内存),相当于内存换性能,物体不可以移动;
原理:只在运行开始阶段,把需要静态批处理的模型合并到一个新的网格结构中;
内部实现:unity首先将这些静态物体变换到世界空间下,然后为它们构建一个更大的顶点和索引缓存,使用同一材质的物体只需要一个Draw Call,使用不同材质的物体虽然仍然需要多个Draw Call,但可以减少这些Draw Call之间的状态切换;
3.共享材质
如果两个材质之间只有纹理不同,可以将两张纹理合并成一个更大的纹理——图集,然后使用不同的采样坐标采样即可;
4.应用场景
游戏中的小道具:可以捡拾