首页/ 第 15 章 · 寻路与导航/ 第 251 课
LESSON 251 · 寻路与导航

寻路与导航入门

寻路入门完成。下一课深挖 NavMeshAgent。

⏱ 约 13 分钟📊 难度:入门🗂 第 15 章 · 寻路与导航📍 第 251 / 300 课
课程进度
251 / 300

🎯本节学习目标

  • 理解寻路原理
  • 认识 NavMesh
  • 掌握导航流程

🚀课程导读

“敌人怎么绕墙找到我”靠寻路。本课建立 NavMesh 寻路系统的整体认知。

寻路原理

A* 与导航网格。

  1. 【寻路问题】从 A 点到 B 点怎么走最合理(绕障碍、走最短)。
  2. 【经典算法】A* 算法:在“可走区域”上搜索最优路径。
  3. 【Unity 方案】NavMesh(导航网格):把场景“可走区域”预计算成网格,寻路在网格上进行。
  4. 【NavMesh】蓝色半透明网格:覆盖地面、斜坡等可走区域;墙洞等不可走区域自动空出。
  5. 【寻路流程】1. 烘焙 NavMesh → 2. Agent 设目标 → 3. 自动算出路径并移动。
  6. 【NavMeshAgent】挂在角色上的“导航代理”:负责沿路径移动、避障。
  7. 【优点】自动绕障、平滑移动、效率高(预计算)。
  8. 【适用】敌人 AI、NPC、玩家自动寻路。
  9. 【注意】NavMesh 是“静态预烘焙”的;动态障碍用 NavMeshObstacle(第 254 课)。
  10. 【完成】理解寻路“地图”思维。
💡
寻路 = 预烘焙“路网”(NavMesh)+ 代理“认路”(Agent)。两步走。

导航系统组件

三个角色。

  1. 【NavMeshSurface】烘焙“路网”的组件(挂在场景里,负责 Bake)。
  2. 新版寻路包:Window → Package Manager 搜 AI Navigation 安装。
  3. 【NavMeshAgent】“走路的人”:挂角色上,SetDestination 指路。
  4. 【NavMeshObstacle】“会动的障碍”:挂移动的障碍物(门、箱子),挡路。
  5. 【OffMeshLink】“特殊连接”:跳跃点、楼梯(第 255-256 课)。
  6. 【流程】搭场景 → 加 NavMeshSurface → Bake → 角色加 Agent → SetDestination。
  7. 【查看】Scene 视图看到蓝色网格即烘焙成功。
  8. 【版本】Unity 6 用 AI Navigation 包(新版);旧版 Window → AI → Navigation。
  9. 【注意】Agent 必须在网格范围内才能寻路。
  10. 【完成】导航系统“三件套”认识完毕。
  11. 【下一步】逐个深挖(第 252-256 课)。
导航三件套:Surface(路网)、Agent(走路)、Obstacle(障碍)。组合即寻路系统。

常见错误与排查

错误:找不到 Navigation 窗口?
原因:新版用 AI Navigation 包
解决:Package Manager 安装 AI Navigation,然后 Window → AI → Navigation。

动手练习

课后小任务(做出来才算真的学会)

  • 安装 AI Navigation 包
  • 认识三个核心组件
  • 理解寻路流程

本节小结

寻路入门完成。下一课深挖 NavMeshAgent。

完成打卡后,主站会实时更新你的学习进度 🎯

← 上一课3D 综合练习:小型 3D 游戏