Unity-遮挡剔除

1.遮挡剔除简述

遮挡剔除的作用:可以降低被渲染对象的个数,降低渲染时间。
原理:避免对因为完全被其他物体挡住而不可见的物体的渲染。

2.遮挡剔除使用方法

Unity主要是用于静态遮挡剔除,但可以对动态物体进行遮挡剔除。
使用遮挡剔除主要有:
1.开启Occlusion Culling窗口,选中物体若为被遮挡物则在Static中设置为Occludee Static ,若为遮挡物在Static中设置为Occluder Static。

遮挡物
理想的遮挡物应该是实心的,体积较大的物体。

原则1:可能阻挡到其它对象的对象才应该被设置为遮挡物。一些远景物体不要设置成遮挡物,否则很可能会导致剔除数据成倍增长以及运行时剔除查询效率降低。另外半透明的物体也不应设置为遮挡物。

原则2:对于某些带类似小孔的物体(例如网,树叶茂盛的树木),可以不将其设置为遮挡物,这样可以避免得到不正确的结果。(smallest
hole参数可以处理这种情况但是其值不宜设得太小)

被遮挡物
通过勾选一个对象的Occludee Static(如上图)可将其设置为静态被遮挡物。

理想的被遮挡物应该是体积较小的,这样它被完全遮挡到的情况才会比较多,因此做遮挡剔除查询才比较有意义。但是如果将对象拆分得过小,也会导致遮挡剔除性能下降。

较大的物体不宜设成被遮挡物(例如在3dMax里合并了之后再倒入到Unity编辑器),但是请注意到被U3D做batch之后渲染的多个mesh在做遮挡剔除时还是会针对单个mesh分别进行,所以不受影响。

bake(烘焙)
在Occlusion窗口的Bake页面进行对场景的遮挡剔除数据的烘培

评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值