栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 游戏开发 > Unity3D

u3d occlusion 遮挡剔除

Unity3D 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

u3d occlusion 遮挡剔除

occlusion 遮挡剔除 静态遮挡剔除 和 Occlusion area

1.使用的时候需要把遮挡物和被遮挡物设置 Occluder Static 或者 Occludee Static。

2.在Window->Rendering中选择Oclusion Culling,打开遮挡剔除面板,然后烘焙。

3.烘焙后会在场景对应的文件夹下生成一个场景文件OcclusionCullingData,并会在场景中自动生成一个遮挡剔除区域。
4.查看效果的话需要在inspector的右边的occlusion面板打开Visualzation选项,在Scene中会有一个Occlusion Culling的界面,然后尝试移动摄像机看效果,当摄像机移动到遮挡剔除的区域内时,被剔除的物体在遮挡剔除区域内不显示。
Occlusion Culling 界面:

摄像机在区域外时物体显示:

摄像机在区域内时物体不显示(黄色线框内就是遮挡剔除的区域):

5.如果需要限定区域,可以添加一个Occlusion area,拖拽范围后重新烘焙,会发现黄色的遮挡剔除区域变了(界面中绿色的区域就是Occlusion area的范围) 。

动态遮挡剔除

1.场景中的添加一个Sphere, 在Mesh Renderer中勾选Dynamic Occlusion。

2.尝试在相机已经在遮挡剔除范围内的时候移动小球,看效果,小球被遮挡的时候就不会显示。
Sphere在遮挡剔除范围外:

Sphere在遮挡剔除范围内:

遮挡入口 occlusion portal

1.在场景中创建一个节点,挂载Occlusion Portal组件,放在被遮挡物前面,烘焙场景。(绿色节点就是Occlusion Portal组件)

2.相机放在遮挡入口前面,勾选和取消勾选组件的open选项,看遮挡效果,如果是open不会遮挡,否则遮挡后面的物体。
open:

close:

3.使用一些需要动态修改是否遮挡的地方,比如门之类的。

遮挡剔除文件

遮挡剔除烘焙后,会在对应场景的文件下创建一个遮挡剔除文件,在运行时,无论打开了多少个场景,Unity 一次仅加载一个遮挡剔除数据资源。因此,必须根据计划是一次加载一个场景还是一次加载多个场景,从而以不同方式准备遮挡剔除数据。
1.单场景加载的话,就按照正常流程,每个场景单独烘焙。
2.多场景的话,需要在烘焙前把其余场景一起在累加在当前场景之后烘焙。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/951332.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号