关于Unity批处理

本文详细介绍了Unity中的静态批处理、动态批处理、GPU Instancing和SRP Batcher,解析了各种批处理的条件、优缺点及限制条件,旨在帮助开发者优化游戏性能。
摘要由CSDN通过智能技术生成

1. 静态批处理

条件:标明为static,相同材质的物体。

        打包时把子模型的顶点信息转换到世界空间下,节约计算资源,子模型共享材质,没有渲染状态的切换,Command Buffer会缓存绘制命令,起到了渲染优化的目的。

缺点:打包后体积增大,运行时占用的内存也会增大。

限制条件:

        · 改变Renderer.Material会造成一份材质的拷贝,可以用sharedMaterial

        · lightmap不同无法参与批处理

2. 动态批处理

条件:动态物体,相同材质。

        在场景绘制之前,将视野内共享同一材质的模型顶点信息变换到世界空间,合批后的模型会在同一个DrawCall绘制。

缺点:增加CPU消耗,合批的消耗小于不合批才有意义。

限制条件:

        · 着色器所有顶点属性总数需要小于900

        · 代码动态改变材质不能合批

        · 有镜像变换(scale为负数)不能合批(还看到一种说法:scale为负数的轴如果是偶数

           是可以合批的 -- 未验证)

        · lightmap不同无法合批

        · 前向渲染模式下,一个物体接受多个光照会产生多余的模型提交和绘制,从而

          附加了多个Pass导致无法合批

3. GPU Instancing

条件:相同

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值