【Unity3D进阶4-2】Unity3D A*寻路算法

一、目录

【Unity3D从入门到进阶】文章目录及设置这个专栏的初衷

二、A*寻路原理分析

假设我们有一个人想从A点到B点,假设两点之间有一道墙。如下所示,绿色是起点A,红色是结束点B,蓝色填充的方块是中间的墙。
在这里插入图片描述
如图所示简易地图, 其中绿色方块的是起点 (用 A 表示), 中间蓝色的是障碍物, 红色的方块 (用 B 表示) 是目的地. 为了可以用一个二维数组来表示地图, 我们将地图划分成一个个的小方块.

二维数组在游戏中的应用是很多的, 比如贪吃蛇和俄罗斯方块基本原理就是移动方块而已. 而大型

游戏的地图, 则是将各种"地貌"铺在这样的小方块上.

二维数组在游戏中的应用是很多的, 比如贪吃蛇和俄罗斯方块基本原理就是移动方块而已. 而大型

游戏的地图, 则是将各种"地貌"铺在这样的小方块上.

开始搜索

  1. 从起点 A 开始, 把它作为待处理的方格存入一个"开启列表", 开启列表就是一个等待检查方格

的列表.

  1. 寻找起点 A 周围可以到达的方格, 将它们放入"开启列表", 并设置它们的"父方格"为 A.

  2. 从"开启列表"中删除起点 A, 并将起点 A 加入"关闭列表", "关闭列表"中存放的都是不需要再次检查的方格

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章