简单说明
1.算法(A星算法)是指解题方案的准确而完整的描述,是一系列解决问题的清晰指令,算法代表着用系统的方法描述解决问题的策略机制。也就是说,能够对一定规范的输入,在有限时间内获得所要求的输出。
2.A星就是用来计算玩家进行路劲的,通过它可以计算出避开阻挡的最短路线
原理
1.A星寻路算法的基本原理就是不停的找自己周围的八个点,选出一个距离目标最近的点作为起点在循环的找
2.寻路消耗公式
F(寻路消耗) = G(距离起点的距离) + H (离终点的距离)
3.A星相关条件
1、 F(寻路消耗) = G(距离起点的距离) + H (离终点的距离)
2、开启队列
3、关闭队列
4、格子对象的父对象
文字总结说明:找到原点周围的8个点然后(有阻挡就返回NUlll) 👉 保存到开启队列中(通过队列的Sort方法进行排序拿到第[0] ,就是距离目标最近的点) 👉 然后把这个点添加到关闭队列 (依次循环)👉 直到与目标点相等
图解如 👇:
代码需求分享图
代码演示
格子类脚本如下📑
代码如 👇:
A星寻路管理器脚本📑
代码如 👇:
最后效果
原理图:
最后
下篇文章再见ヾ( ̄▽ ̄)ByeBye