当前位置: 首页 > news >正文

Unity AI Navigation 从 0 到 1:一篇吃透新 NavMesh 系统的实战

一、为什么你必须升级到老 NavMesh?

如果你还在用 2021 LTS 之前的 Navigation 窗口做 Bake,那你一定踩过这些坑:

  • 场景里一移动箱子,就要重烤 NavMesh,CPU 直接爆炸;

  • 不同体型的 NPC 必须共用同一张 Mesh,导致“巨人穿不过门、老鼠上楼梯”这种魔幻现实;

  • 代码里各种NavMeshAgent.SetDestination写得好好的,一上真机就集体“漂移”。

Unity 2022.2 之后,官方把导航整块拆成AI Navigation 包(com.unity.ai.navigation),老系统被标记为 Obsolete。新系统 = 可运行时烘焙 + 多代理支持 + 真正的动态障碍,香到飞起。


二、5 分钟搭好最小可跑场景

  1. 新建 3D 项目,把 AI Navigation 包装上(Window → Package Manager → Unity Registry)。

  2. 建一个 Plane 当地面,摆几堵 Cube 当墙。

  3. GameObject → AI → NavMesh Surface,选中地面 + 墙壁,Inspector 点 Bake,蓝色网格瞬间生成。

  4. GameObject → 3D Object → Cylinder,Add Component → NavMesh Agent。

  5. 给圆柱挂个脚本:

csharp

复制

using UnityEngine; using UnityEngine.AI; public class MoveToClick : MonoBehaviour { NavMeshAgent agent; void Start() => agent = GetComponent<NavMeshAgent>(); void Update() { if (Input.GetMouseButtonDown(0)) { if (Physics.Raycast(Camera.main.ScreenPointToRay(Input.mousePosition), out var hit)) agent.destination = hit.point; } } }
  1. 运行 → 鼠标点哪圆柱走哪,路径实时避墙,全程零魔法。


三、新系统核心概念一张图看懂

表格

复制

组件作用和老版差异
NavMesh Surface真正持有 NavMesh 数据,可运行时 Bake老版数据藏在场景里,无法动态更新
NavMesh Modifier让子树在烘焙时“无视/改 Area/禁止走路”替代 Navigation Static 复选框
NavMesh Modifier Volume立方体区域内强行改 Area老版做不到“空气墙”
NavMesh Link / Off-Mesh Link跳跃、爬梯、开门新版支持运行时改起点终点
NavMesh Obstacle动态障碍,两种模式:Obstruct vs Carve老版只有 Obstruct,不会挖洞

四、动态障碍:从“撞墙”到“挖洞”

把箱子加上 Rigidbody + NavMesh Obstacle:

  • Obstruct 模式:箱子靠 RVO 被绕开,适合不停移动的推车。

  • Carve 模式:箱子静止后在 NavMesh 上挖洞,重新寻路,适合可被玩家拖动的障碍。
    记得把Carve Only Stationary勾上,移动时不反复挖洞,性能翻倍。


五、多体型 NPC:一张图各自走各路

  1. Window → AI → Navigation → Agents 页签,新增两种 Agent Type:

    • Humanoid:半径 0.5 m,高 2 m,跳距 3 m。

    • Spider:半径 0.3 m,高 0.4 m,可爬 80° 斜坡。

  2. 给地面再挂两个 NavMesh Surface,各自指定 Agent Type,Bake 出两张 Mesh。

  3. 把士兵的 NavMesh Agent → Agent Type 选 Humanoid,小蜘蛛选 Spider,从此各走各的路,互不抢道。


六、运行时烘焙:无限地图的杀手锏

csharp

复制

NavMeshSurface surface; void Start() { surface = GetComponent<NavMeshSurface>(); surface.BuildNavMesh(); // 一帧搞定 }

配合Sliding Window示例,角色走到哪,NavMesh 就增量烘焙到哪,内存只保留玩家周围 128×128 m 的格子,真正做到“伪无限”大世界。


七、动画 + 导航:告别“滑冰”

老版 Root Motion 和 NavMeshAgent 互相打架?新版官方直接给出模板脚本LocomotionSimpleAgent.cs

  1. 关闭agent.updatePosition / updateRotation,由动画驱动位置。

  2. 每帧把agent.nextPosition同步回transform.position,误差过大时再把角色拉回代理位置,兼顾“真实踩点”与“碰撞避让”。

  3. agent.steeringTarget喂给 LookAt IK,提前转头,动作自然。


八、常见坑与调优 checklist

  • Bake 失败全红:检查是否忘了给地面加 Collider 或 NavMesh Modifier 把对象设成 Walkable。

  • Agent 原地打转:把Angular Speed调到 500+,或把Acceleration降低。

  • Carve 后帧率暴跌:Tile Size 默认 256 改 64, carving 并行度↑;移动阈值(Move Threshold)≥ 0.5 m。

  • Off-Mesh Link 不走:确认两端在 NavMesh 上且 Area Mask 包含 Jump;Cost Modifier 别手滑填了 999。

  • Height Mesh 踩空楼梯:在 NavMesh Surface → Advanced → Build Height Mesh 勾上,代理会精确贴楼梯高度,不再悬空滑。


九、升级老项目 3 步走

  1. 备份!

  2. Window → AI → NavMesh Updater → Convert → 一键把旧 Navigation Static 转成 NavMesh Modifier。

  3. 删掉早年从 GitHub 扒的NavMeshComponents脚本,避免重复定义。


十、结语

AI Navigation 不是“小修小补”,而是 Unity 导航的彻底重构:

  • 数据与场景解耦 → 支持 DLC 动态加载;

  • 多代理、多 Area → 战术 FPS、RTS、潜行各取所需;

  • 运行时烘焙 + 动态雕刻 → 沙盒、Roguelike 也能畅玩。

把这篇笔记收藏,下次面试被问到“Unity 怎么做动态寻路”,直接把 Carve 模式、多 Surface、运行时 Bake 甩他脸上,稳。

Demo 工程已上传 GitHub,点个 Star 不迷路 ➜ github.com/yourname/AI-Navigation-Demo
(完)

http://www.jsqmd.com/news/230744/

相关文章:

  • (8-1)自动驾驶中的无地图环境路径探索:D* Lite算法简介
  • (8-2-01)自动驾驶中的无地图环境路径探索:基于Pygame的交互式路径规划器(1)
  • 计及多能耦合的区域综合能源系统电气热能流计算Matlab实现
  • Unity 的AI Navigation 系统详细总结
  • Unity3D AI Navigation 完全指南:从基础到实战,让角色智能导航
  • Unity3D AI导航系统完全指南:从核心概念到动画耦合
  • RabbitMQ在大数据风控系统中的应用案例
  • CRM服务质量差?提示工程架构师的3个Prompt解决方案
  • AI智能侦测开箱即用方案: Docker镜像+示例代码全家桶
  • AI安全技能树:零基础到精通的资源地图
  • 智能实体哨兵系统:7×24小时云端值守,月费不足人力1/10
  • 智能监控AI懒人包:一键部署复杂模型,省去7天配置时间
  • 跨平台用户画像构建:多源数据实体对齐,隐私合规
  • 【46】骰子数据集(有v5/v8模型)/YOLO骰子点数检测
  • AI侦测模型微调教程:云端GPU加速,3小时完成迭代
  • AI安全检测5大模型横评:云端3小时完成,比本地省时80%
  • UEBA行为分析避坑指南:云端GPU免配置,比自建省90%成本
  • 百万行级行业代码如何做AI解读
  • AI健身动作识别:预置运动实体模型,APP快速集成
  • VisionPro二开之日志Log模块
  • 智能体多语言支持测试:云端GPU秒切语言包,0等待
  • AI安全工程师速成:30小时实战课程+配套GPU资源打包
  • 云服务器CPU选AMD EPYC还是Intel Xeon更合适?
  • VisionPro二开之主界面设计
  • 原创诗集(陆续更新)
  • AI新闻热点提取教程:10分钟部署,媒体人必备
  • 内网渗透AI检测实战:云端GPU环境免配置,安全工程师必备
  • 学霸同款2026 AI论文工具TOP9:继续教育必备测评
  • AI侦测模型省钱攻略:按需付费比买显卡省90%成本
  • DeepSeek实体分析实测:云端10分钟出结果,新手指南