![]() |
1
8
您确实需要一个*,它是基于网格的寻路的最佳实现。 这可能会帮助您: http://www.cokeandcode.com/main/tutorials/path-finding/ 编辑: 前面的链接既适合作为一组可实现的类,也适合作为定制路径查找方法以满足您的满意度的指南。 |
![]() |
2
4
这是迄今为止我看到的最有信息的寻路帖子: http://www.ai-blog.net/archives/000152.html |
![]() |
3
3
书 AI for Game Developers 对A*有很好的解释。实际上我今天要写一个实现…如果我这样做,我会把代码扔到这里。 代码已完成,它太大,无法放在此处,因此您可以从以下位置获取: https://chaos.bcit.ca/svn/public/astar/ (自签名证书,但服务器不会做任何坏事)。 我大部分时间都遵循书中的伪代码,但是我使所有的东西都比我迄今为止所看到的面向对象的*。 你有一个由瓷砖组成的迷宫。每个图块都有一个位置和一个障碍物(如果没有障碍物,则为空)。 您可以使用路径查找器(如astar)查找给定开始和结束位置之间的最短路径。你会得到一条返回的路径,其中包括从开始到结束你需要经历的瓷砖。 您可以通过提供不同的启发式计算器来更改启发式计算(当前的启发式计算器只是检查是否存在障碍,并找出要通过的最短瓷砖数,您可以为不同的障碍添加权重,例如,如果您不喜欢默认值)。 代码是LGPL下的许可证,因此如果您进行更改并分发应用程序,则必须使更改可用。请随意将错误报告/修复程序发送到许可证注释中的电子邮件地址(在每个标题中找到)。 考试后我会(从来没有)到处发表评论,但我认为这是非常直截了当的。 |
![]() |
4
2
|
![]() |
5
0
也许你找到了你想要的,但这里有一个链接,上面有一个关于*寻路的很好的解释。我必须在 C++ 它帮助我理解它是如何工作的。 http://www.abdn.ac.uk/~csc245/teaching/CS1015/practicals/aStarTutorial.htm |