本文所用的unity版本是5.6.3f1
对于一些简单的AI寻路功能,我们可以直接利用unity自带的寻路设置,下面是个简单的demo,将一个cube设置成了player,一个capsule设置成敌人,player就是敌人的目的地位置,烘焙好的场景,有可以行走、跳跃的路径,默认会选择cost值最低的路线移动。
1.将墙体等Static设置为navigation static
![unity自带寻路功能实现 unity自带寻路功能实现](https://image.shishitao.com:8440/aHR0cHM6Ly9waWFuc2hlbi5jb20vaW1hZ2VzLzc5NS9jYmQzN2Y0MTc4M2MwNTNkMGI4MDg3NjNiODVlODBiMy5wbmc%3D.png?w=700&webp=1)
![unity自带寻路功能实现 unity自带寻路功能实现](https://image.shishitao.com:8440/.jpg?w=700&webp=1)
2.在Navigation面板,设置寻路物体的高度、半径,可行走台阶高度、坡度、跳跃高度等参数,然后进行烘焙(Bake)
![unity自带寻路功能实现 unity自带寻路功能实现](https://image.shishitao.com:8440/.jpg?w=700&webp=1aHR0cHM6Ly9waWFuc2hlbi5jb20vaW1hZ2VzLzIyMC9iNjE3NGRiNzk2YmJiMTk0YjBhOTk3ZTA5ZThmOTQyYy5wbmc=)
![unity自带寻路功能实现 unity自带寻路功能实现](https://image.shishitao.com:8440/.jpg?w=700&webp=1)
3.寻路物体优先选择Cost值小的路线
![unity自带寻路功能实现 unity自带寻路功能实现](https://image.shishitao.com:8440/.jpg?w=700&webp=1aHR0cHM6Ly9waWFuc2hlbi5jb20vaW1hZ2VzLzUxNi8zN2ZkZmI0M2YxNzFiOGFiYTMwNDZjZGVlYjgwYTg5NC5wbmc=)
![unity自带寻路功能实现 unity自带寻路功能实现](https://image.shishitao.com:8440/.jpg?w=700&webp=1)
4.在不需要烘焙的物体上添加Nav Mesh Obstacle组件(类似门的功能),烘焙后,该物体占用的地方在物体移开后也可通过(Carve选项勾选后,寻路物体就不知道该位置有路)
![unity自带寻路功能实现 unity自带寻路功能实现](https://image.shishitao.com:8440/.jpg?w=700&webp=1aHR0cHM6Ly9waWFuc2hlbi5jb20vaW1hZ2VzLzEwLzgxY2VjYWZmMjkwYzdiZDc2MzhhNGRmZjY3NTI5YzAyLnBuZw==)
![unity自带寻路功能实现 unity自带寻路功能实现](https://image.shishitao.com:8440/.jpg?w=700&webp=1)
5.另外还可以自行设置跳跃路径,在空物体上添加Off Mesh Link组件,下面为起点和终点位置
![unity自带寻路功能实现 unity自带寻路功能实现](https://image.shishitao.com:8440/.jpg?w=700&webp=1)
![unity自带寻路功能实现 unity自带寻路功能实现](https://image.shishitao.com:8440/.jpg?w=700&webp=1aHR0cHM6Ly9waWFuc2hlbi5jb20vaW1hZ2VzLzUyNS85MTZmYzE5MzQ3ZjM3ZmRhYzIyZjg3NTVjMDdhNDM1ZC5wbmc=)
![unity自带寻路功能实现 unity自带寻路功能实现](https://image.shishitao.com:8440/.jpg?w=700&webp=1)
![unity自带寻路功能实现 unity自带寻路功能实现](https://image.shishitao.com:8440/.jpg?w=700&webp=1aHR0cHM6Ly9waWFuc2hlbi5jb20vaW1hZ2VzLzc2Ny9mNTNkNzM5NzJlNGFhMGE4Yjg4ZmU5Y2YyNzU2N2Q4Ny5wbmc=)
6.在寻路物体上添加Nav Mesh Agent组件,并添加脚本设置目标位置(需要引用UnityEngine.AI)
![unity自带寻路功能实现 unity自带寻路功能实现](https://image.shishitao.com:8440/.jpg?w=700&webp=1)
![unity自带寻路功能实现 unity自带寻路功能实现](https://image.shishitao.com:8440/.jpg?w=700&webp=1aHR0cHM6Ly9waWFuc2hlbi5jb20vaW1hZ2VzLzY4My9jYTFmNTI4OTBlOTUxZjdkZmFhMjlmYTlhODM1ZmUxYi5wbmc=)
![unity自带寻路功能实现 unity自带寻路功能实现](https://image.shishitao.com:8440/.jpg?w=700&webp=1aHR0cHM6Ly9waWFuc2hlbi5jb20vaW1hZ2VzLzEwNy9mOTY5NjcxNTJkOTgxMDcyM2FlNzRmNTc0NjRlNGMwMy5wbmc=)
![unity自带寻路功能实现 unity自带寻路功能实现](https://image.shishitao.com:8440/.jpg?w=700&webp=1)