- 最后登录
- 2019-12-25
- 注册时间
- 2012-8-24
- 阅读权限
- 90
- 积分
- 71088
- 纳金币
- 52336
- 精华
- 343
|
动态批处理:
优点:
1.不需要代码控制
2.优化许多物体的时候不会引起卡顿
3.支持每一个物体的剔除
4.物体可以移动旋转
5.物体可以生成销毁
缺点:
1.如果有点光源和探照灯则无法起作用
2.物体必须使用统一的缩放
关于动态批处理,之前有个误解,以为通过ctrl+d复制出来的进行动态批处理,而通过代码instantiate出来的则不进行批处理,这一点是错误的,主要原因是上述缺点第一条造成的,因为有光所以instantiate出来的物体没有进行批处理
静态批处理:
优点:
1.没有点光源和探照灯的情况下可以大幅减少draw call
2.有点光源和探照灯的情况下可以减少draw call
3.支持每一个物体的剔除
4.物体可以销毁
缺点:
1.为了优化防止卡顿需要大量代码控制
2.如果有点光源和探照灯则无法起作用和合并网格一样
3.物体必须使用统一的缩放
4.批处理之后物体不能被移动
5.为了优化新创建的物体必须重新批处理
网格合并:
优点:
1.在各种照明情况下工作良好
2.在任何缩放下工作良好
缺点:
1.避免优化产生的滞后尖峰需要代码做很多工作
2.不支持单个物体的剔除,造成大量计算屏幕外物体的资源浪费
3.物体合并之后不能移动,除非移动之后重新合并
4.物体合并之后不能创建和销毁,同样除非事后重新合并
5.需要更多的内存去存储合并之后的网格
比较好的做法:
尽量使用动态批处理
原文链接
http://answers.unity3d.com/questions/197415/dynamic-batching-and-instantiating.html
|
|