navmesh寻路原理
合集下载
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
navmesh寻路原理
navmesh寻路原理是非常常用的空间寻路算法,它是基于三角网格的一种算法,可以将复杂的世界视为一个三角多面体的集合,并计算
机求取路径使用该算法。
navmesh寻路的核心思想是,把复杂的世界变成一个简单的三角网格,这个网格由多层三角网格(mesh)和navmesh组成,navmesh就是表示到达目的地的路径,每一个三角形都有相应的位置、高度和方向。
首先,把场景的复杂的地形分割成各自的三角网格,这个过程称
为对地形进行离散,这个三角网格就是navmesh的基础,然后分析它
的路径,看着每一个三角形的位置和方向,看看其他的三角形是不是
可以从当前的三角形走到,就把可走的三角形分为可走区域,从而构
建出一张navmesh,注意navmesh不包括地形中禁止行走的地方。
当游戏去寻找一条最短路径时,需要把起点和终点放到navmesh 中,然后利用A*算法或者Dijkstra算法去寻找最短的路径,这些算法是求解树形最短路径的特殊算法,可以把navmesh视为一棵树,并从
根出发算出最短路径。
最后,它会在navmesh中找出一条最短路径,当路径找到时,就
可以用这条路径对游戏行为进行计算,以达到预期的路径寻找效果。
总而言之,navmesh寻路非常受欢迎,它可以提供高效的路径规划,非常实用,符合开发者的要求。
此外,它分割空间支持快速处理,在
搜索最短路径时,可以降低搜索的层数,从而提高游戏性。