A星的作用相当于导航用来寻路的,其次是A*算法适合用于2D类型的游戏
A*基本语言 用来不停的遍历身边的点 知道找到最终点为止
(1)A*算法的公式 f(寻路的总消耗 ) =g(当前位置到起点的消耗)+h(当前位置到终点的消耗)
(2) 开启列表 (open) 当前节点周围的 能够走到的节点 和关闭列表 (Close) 已经走过的节点
(3) 格子对象的父对象 最终路径是 :通过父节点往回拉的过程
而不是存在于关闭列表中的点就是最终的路程
每一次从新的点去找周围的点 (每一次去遍历周围的8个点 从8个点中去寻找 最优的那个点 然后吧最优的点放在关闭列表中 )
然后在通过最优的点在遍历周围的点 吧周围的8个点放在开启列表 然后把最优的点放到 关闭列表 ,注意每一次放在关闭列表中的点我们都要放
判断他是不是终点 如果是证明路径已经找完了 如果 不是就继续去找 )
有一种情况是 如果障碍物 多的情况下 他会有一种 在遍历周围点的过程中如果遇到此路不通的情况的
然后他会重新去寻找别的路 所以说 放在闭合列表中的不一定是最终路径
关于A*算法的优化
网友评论