我正在开发一款僵尸在沼泽中奔跑的游戏。我希望 AI 具有“追逐这个目标”或“逃跑”之类的功能。一个主要的绊脚石是寻路。XNA 中是否有一个好的寻路/AI 引擎,或者我应该自己开发?
有没有人有这方面的经验:http: //www.codeplex.com/simpleAI?
我正在开发一款僵尸在沼泽中奔跑的游戏。我希望 AI 具有“追逐这个目标”或“逃跑”之类的功能。一个主要的绊脚石是寻路。XNA 中是否有一个好的寻路/AI 引擎,或者我应该自己开发?
有没有人有这方面的经验:http: //www.codeplex.com/simpleAI?
您可能想寻找 A-Star 算法...这是一篇在 winform 的上下文中讨论它的文章,但提到了 XNA。
自己滚!严重地。
我认为您制作这款游戏是为了享受编码的乐趣,就像您希望成名和财富一样?寻路是人工智能的主要内容之一,是一个经过充分研究和记录的主题。这是对您在未来游戏工作中需要了解的领域的极好介绍。
A* 算法(正如其他人所提到的)是此问题的标准解决方案 - 但请尝试其他方法:视线、脚本移动、植绒……通常您可以通过结合一些技术来获得有趣的行为。
如需有关该主题的书籍,请尝试《AI For Game Developers》——虽然不是该领域最好的,但对于外行编码人员来说无疑是一本易于理解的介绍。
和僵尸一起玩得开心!
http://xnapathfindinglib.codeplex.com/
http://swampthingtom.blogspot.com/2007/07/pathfinding-sample-using.html
对于所有建议 A* 的人:您通常不会将原版 A* 放入游戏中。A* 有很多改进和扩展,包括(但不限于)IDA* 和转置表,它们可以提高基于 A* 的搜索的性能。
您可能希望使用库来帮助您入门,但您最终可能会从您自己的自定义实现中受益更多,使用您自己的应用程序原生数据类型,而不必来回编组数据。但是您需要进行概要分析才能确定。
XNA Creators 俱乐部有Chase、Evade和Flocking的样本。
我刚刚开始走这条路,但他们似乎在creators.xna网站上有一些很好的资源。
我将在我的游戏中使用一些寻路逻辑,A* 算法似乎是我的赢家。