【发布时间】:2016-03-13 05:17:52
【问题描述】:
【问题讨论】:
标签: unity3d artificial-intelligence path-finding navmesh
【问题讨论】:
标签: unity3d artificial-intelligence path-finding navmesh
不幸的是,Unity 基于 navmesh 的导航系统仅适用于与 y 轴对齐的地形——也就是说,世界的 y 轴用作向上向量,地形的坡度是使用它计算的作为参考。
只有球形对象的顶部被认为是可行走的,因为如果将 y 轴视为向上矢量,则该地形其余部分的坡度大于导航网格烘焙设置所允许的坡度。
解决此问题的唯一方法是编写自定义解决方案 - 但是,幸运的是 not the first one to pose such a question。普遍接受的方法是使用 A* algorithm 和自定义启发式函数(基于网格的顶点)来计算到目的地的最短路径。
这里是a good tutorial on how to implement A* in Unity,它将让您了解基础知识,以便您了解如何将算法应用到环绕自身的地形。如果您不打算编写自己的解决方案,还有an existing A* asset for sale on the Unity Asset Store(也提供免费版本),这被认为是对 Unity 自己的导航系统的可靠改进,并且可以适用于非垂直地形,例如您的一些调整。
希望这会有所帮助!如果您有任何问题,请告诉我。
【讨论】: