如何在Cocos2D游戏中实现A*寻路算法(八)

大熊猫猪·侯佩原创或翻译作品.欢迎转载,转载请注明出处.

如果觉得写的不好请告诉我,如果觉得不错请多多支持点赞.谢谢! hopy ;)


免责申明:本博客提供的所有翻译文章原稿均来自互联网,仅供学习交流之用,请勿进行商业用途。同时,转载时不要移除本申明。如产生任何纠纷,均与本博客所有人、发表该翻译稿之人无任何关系。谢谢合作!

如何在Cocos2D游戏中实现A*寻路算法(八)

就拿上图中左上角的情况举个栗子.

这只猫咪想要从原点(O)到左下角的对角线方块中去.如果在左边或底下(或全部都有)有墙壁并且测试穿过对角线将会切入一个墙角(或2个).所以左下角的对角线方块仅在那里有一堵墙壁在左侧或底部时才会添加进开放列表.

提示:你可以模拟不同的地形,通过更新costToMoveFromStep方法将地形考虑进来.实际上如果你降低G花费则表示猫咪将会在那些方块上走的更快,反之亦然.

接下来该做什么呢?

这里是 Cat Maze project 可以下载,其中包括了以上所有内容的代码(包括对角线移动).

祝贺你,现在你了解了A*寻路算法的基本知识并且有经验去实现它了!现在你应该准备去:

  • 在你自己的游戏中实现A*算法
  • 做必要的改进(比如允许不同种类的地形,更好的启发式算法,等等)和优化.
  • 阅读除此之外的其他主题,比如这篇精彩的指南:Amit’s A* Pages

如果你有关于本课程的任何问题或意见,请参与下面的讨论!

(本系列全篇完,感谢观赏 ;)

上一篇:你我公益模式系统APP开发


下一篇:MySQL 笔记整理(11) --怎么给字符串字段加索引?