unity NavMeshAgent(自动寻路)+鼠标点击到达地点+动态障碍寻路

Unity NavMeshAgent(自动寻路)+鼠标点击到达地点+动态障碍寻路

1、利用NavMeshAgent实现简单寻路(无需手动操作,设置好目标即可寻路)
效果:
在这里插入图片描述
步骤
(1)先创建地形及障碍物(长方体),障碍物一定要放到plane层级下方。
在这里插入图片描述
(2)点击Plane,在右侧检查器中,点击“静态的”,勾选“Navigation Static”,并应用到子物体
在这里插入图片描述
(3)点击“窗口”,选择“AI”,点击其中的“导航(Navigation)”
在这里插入图片描述
(4)点击后打开了导航界面,首先,点击“对象”
点击层级视图中的Plane,将Plane设置为"Walkable"
在这里插入图片描述
点击Plane下的障碍物,将其都设置为“Not Walkable”
在这里插入图片描述
然后选择“烘焙”区域,根据自身可调整参数,然后点击Bake.
在这里插入图片描述
烘焙中主要是地形对寻路的影响:
●代理半径(Agent Radius)可理解为寻路者的半径
●代理高度(Agent Height) 可理解为寻路者的高度
●最大坡度(Max Slope) 超过这个坡度寻路者则无法通过。
●步高(Step Height) 是楼梯的最大高度,超过这个高度寻路者则无法通过。
●掉落高度(DropHeight) 寻路者可以跳落的高度极限。
●跳跃距离(Jump Distance)寻路者的跳跃距离极限。

点击Bake后,会在Scenes中自动生成文件夹及文件
在这里插入图片描述
此时观察场景中,其中蓝色部分就是可以移动的部分。
在这里插入图片描述
(5)添加Play(寻路者)和Target(寻路目标)
在这里插入图片描述
点击Play,在检查器为其添加“Nav Mesh Agent”组件
在这里插入图片描述
创建一个脚本“Move.cs”,挂载到Play上,代码如下

using System.Collections;
using System.Collections.Generic;
u
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值