【Unity VR开发】结合VRTK4.0:导航网格限制移动区域

在Unity游戏开发中,通过将场景中的静态对象如地板和Cube设置为NavMesh,然后进行烘焙,可以定义有效移动区域。NavMeshRule组件用于设定指针只考虑UnityNavMesh区域为有效目标。在播放场景时,指针会根据NavMesh的边界显示有效(绿色)或无效(红色)状态。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

前言:

       当别人质疑你的时候千万不要当一回事,因为他只是看到了表面,也不要去相信公司领导给你的承诺,在你付出的时候,他会觉得很满意,但过去了这风波,你就会像空气一样,什么也不是,你永远没有资格跟他说三道四,在他眼里,你有利用价值,那你就是有用的,你没有利用价值,那你什么都不是,画大饼的事谁都会做,而往往会给手下谋福利的很少很少,人生就是这样,总会渐行渐远,我们要习惯,朋友;


学习内容:

在项目中,我们有时候需要确定哪些区域被认为是有效的,是可以移动的,这个时候我们就需要

NavMesh在场景中映射出有效区域。


正文:

Step1:

我们需要将场景中可移动的区域设置为静态的,这里我们创建有地板,所以直接将地板勾选为静态;

Step2:

我们再创建一个Cube,然后也将其拉为静态 

Step3:

现在我们需要将 Unity 导航网格体烘焙到场景中,因此通过选择打开导航窗口。然后在该部分中,单击按钮开始烘焙 Unity 导航网格。Window -> AI -> Navigation ,然后直接Bake。

Step4:

现在我们已经烘焙了 Unity NavMesh,我们可以设置我们的规则来告诉我们的指针只将 Unity NavMesh 区域视为有效目标。我们再场景中添加一个空物体,然后再空物体上添加一个组件:

Nav Mesh Rule。 

 Step5:

现在我们需要告诉我们的曲线, Unity NavMesh区域为有效区域,其他区域为无效区域,这时我们需要将我们刚创建的组件拉取到曲线组件中的Target Point Validity中。

 Play:

播放 Unity 场景,按键激活对象指针并将其对准。您将看到指针光束在击中 Unity 导航网格的任何部分时显示为有效(绿色)状态,但当它击中 Unity 导航网格体外部时显示为无效(红色)状态。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值