(A*) 寻路
仅适用于上、下、左、右
无论如何,我不确定,我已经检查了一些示例,但是,会是这样吗?:
Point StartTile;
Point EndTile;
List<Point> CheckedPoints;
List<Point> UncheckedPoints;
所以,我会将StartTile添加到UncheckedPoints。
我将循环浏览UncheckedPoints,并将 (Up, Down, Left, Right) 磁贴添加到UncheckedPoints(如果它不在CheckedPoints中) 。并删除我刚刚检查的点,并将其添加到CheckedPoints。
在UncheckedPoints到达EndTile之前,我会这样做,然后呢?
1 如果我无法到达 EndTile,它会永远循环吗?我怎样才能防止这种情况?
2 如果我无法到达 EndTile,有没有办法让最接近 EndTile 的瓷砖?
3 如何获取从 StartTile 到 EndTile 的图块列表?为每个周期保留一个长列表会占用大量内存,对吧?