一般来说,不可攀爬的 Nav Mesh 都被视为障碍物(Nav Mesh Obstacle),也可以直接将物体设为障碍物,即可以为游戏对象添加 Nav Mesh Obstacle 组件。
有别于普通的 Nav Mesh,Nav Mesh Obstacle 是一种不需要烘焙的障碍物,形状可以选择为立方体或胶囊体。
在自动寻路过程中,往往会遇到障碍物,在寻路过程中遇到障碍物要怎样解决呢?
Unity 官方内置的寻路插件 Navmesh 完美地解决了这个问题。
本案例通过一个简单的有障碍的场景,实现自动寻路中障碍物绕行功能。
本案例在 Unity 3D 内创建一个有障碍的场景,场景内有一个 Cube 用来充当障碍物,通过 Navmesh 插件实现主角遇到障碍物时自动绕行效果。
步骤 1):执行 File→Save Scene as 命令,将 Navigation 场景另存为 Obstacle 场景,如下图所示。