Unity3D导航系统
Unity3D导航系统
简介
Unity3D自带导航系统,将寻路的代码封装起来,集成了Navigation导航系统。
Navigation总控制面板由Agent(代理/导航参数设置)、Areas(区域)、Bake(烘培)和Object(对象)4部分组成。
导航系统介绍
Unity3D导航系统由三个组件和一个Navigation总控制面板组成,该系统也是由A*算法拓展实现的。
Navigation是一种用于实现动态对象自动寻路的技术,它将游戏场景中复杂的关系简化为带有一定信息的网格,并基于这些网格经过一系列相应的计算实现自动寻路
Navigation总控制面板介绍
Navigation总控制面板由4部分组成,分别为Agent、Areas、Bake和Object,下面具体介绍一下。
- Agents(导航参数设置)面板
- Name(名称):设置烘培Agents的名字
- Radius(半径):烘培的半径,也就是对象烘培的半径。对象能通过的路径大小,值越小,能走的路径越大,边缘区域越小。
- Height(高度):具有代表性的对象的高度,可以通过的最低的空间高度。值越小,能通过的高度就越小。
- Step Height(步高):梯子的高度,一般根据模型梯子的高度设置。
- Max Slope(最大坡度):烘培的最大角度,坡度。
- Areas(区域)面板
该面板可以设置在自动寻路时,对象可以通过哪些区域 - Bake(烘培导航网格)面板
- Agent Radius(代理半径):具有代表性的对象的半径,半径越小生成的网格面积越大。
- Agent Height(代理高度):具有代表性的对象的高度。
- Max Slope(最大坡度):斜坡的坡度。
- Step Height(步高):台阶的高度。
- Drop Height(掉落高度):允许最大的下落距离。
- Jump Distance:允许最大的跳跃距离。
- Min Region Area(最小区域面积):网格面积小于该值则不生成导航网格。
- Height Mesh(高度网格):勾选后会保存高度信息,同时会消耗一些性能和存储空间。
- Object(对象)面板
在该面板中可以选择、设置要参与导航网格烘培的对象、可以设置对象是可以被自动寻路的,如路面;也可以设置对象是不可以被自动寻路的(即不能走),如湖面。
Navigation组件介绍
- Nav Mesh Agent(自动寻路组件)
- Agent Type(代理类型):寻路类型
- Base Offset(基准偏移):偏移值。值越大越容易寻路,但目标会偏离得月圆
- Speed(速度):对象自动寻路的速度
- Angular Speed(角速度):对象自动寻路的拐弯速度
- Acceleration(加速):加速度
- Stopping Distance(停止距离):对象停下的距离。如果值设置为0,则在距离目标点为0处停下
- Auto Braking(自动刹车):是否自动停下
- Radius(半径):对象躲避障碍物的半径。大于这个半径无法躲避障碍物
- Height(高度):对象躲避障碍物的高度。大于这个高度无法躲避障碍物
- Quality(质量):躲避障碍物的等级,等级越高,躲障碍物越准确
- Priority(优先级):优先级。值越大,障碍物躲避越优先
- Auto Traverse Off Mesh Link(自动通过分离网格链接):自动跳跃链接
- Auto Repath(自动重新寻路):自动复制路径
- Area Mask(区域遮罩):能通过的Mask层,可以配合Navigation组件中的Areas使用。
- Nav Mesh Obstacle(障碍物组件)
- Shape(形状):障碍物的形状
- Center(中心):障碍物的中心点坐标
- Size(大小):障碍物的大小
- Carve(切割):障碍物的网格
- Off Mesh Link(跳跃组件)
- Start(起始):跳跃的开始点
- End(结束):跳跃的结束点
- Cost Override(成本覆盖):是否计算路径开销,即使否将寻路计入寻路距离
- Bi Directional(双向):开始点和结束点是否可以互跳
- Activated(已激活):是否激活
- Auto Update Position(自动更新位置):自动更新位置坐标
- Navigation Area(导航区域):可以寻路的层
参考文献
【1】张尧.Unity3D从入门到实战.中国水利水电出版社,2022(6):95-98
实例
https://www.cnblogs.com/su-make/articles/Unity-Navigation-Example.html
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· .NET 使用 DeepSeek R1 开发智能 AI 客户端
· 10亿数据,如何做迁移?
· 推荐几款开源且免费的 .NET MAUI 组件库
· c# 半导体/led行业 晶圆片WaferMap实现 map图实现入门篇
· 清华大学推出第四讲使用 DeepSeek + DeepResearch 让科研像聊天一样简单!