如何在2D游戏中为角色创建平滑的路径

时间:2010-12-13 05:32:22

标签: iphone android bezier spline

我正在创建一个iPhone / Android塔式防御型游戏,敌人单位必须遵循预定的路径,这对于iPhone和Android版本来说都是一样的。我最初认为立方贝塞尔曲线或b样条曲线是可行的方法,但我没有找到一种直接的方法来生成路径并描述它们。

这是正确的方法,如果有的话,是否有任何工具以图形方式生成路径并确定控制点的坐标等?

路径也需要平滑(即不是线段的集合)。

3 个答案:

答案 0 :(得分:1)

我正在寻找的是Catmull-Rom样条(参见:http://www.cubic.org/docs/hermite.htm),它只是一种Hermite曲线,其中控制点是“自动”计算的。 Apple实际上在SDK中使用它(搜索catmull-rom的文档)。

另请参阅Wikipedia article

基本上,这只是允许您输入一个点列表,该函数将为您提供通过这些点的平滑路径。

答案 1 :(得分:0)

我所知道的最简单的路径寻找算法是A *搜索。它将为您提供两点之间最短的开放路径。要描述游戏中的特定路径,您只需要基本上设置航点,并从点到点设置A *。希望这可以帮助。祝你好运!

编辑:你可以在任何地方找到A *实现,维基百科是显而易见的起点。

答案 2 :(得分:0)

您是否尝试过A-Star算法?我认为这对寻找路径非常有用。 A-Star算法输入两个点,第一个是移动的对象,第二个是目的地,然后算法将通过避开块对象找到两者之间的路径。