精灵套件:如何创造无限的游戏背景,如“Binary Rush'或者'留在线上'?

时间:2014-12-11 04:40:58

标签: swift sprite-kit cgpath skshapenode

我想创建一个无限的游戏背景,例如' Binary Rush'或者' Stay in the line'。背景可能是一个简单的轨道。它有点像随机的赛道。

目前我使用单个SKShapeNode绘制路径,只需将lineWidth设置为一个大数字。我使用var path = CGPathCreateMutable();创建随机曲目。 显然这不是理想的解决方案,因为赛道仅限于一条线路。我希望轨道可以扩展不同的宽度,甚至在轨道内添加一些障碍物。

所以我的问题是: 1.对于那两个游戏,他们的背景只是图像,滚动时,它只是加载一个随机的? 2.我如何随机生成这些轨道,可以灵活地改变其宽度或在其中添加障碍物? 3.如何组合这些轨道的不同部分,我假设不创建无限长路径。应该将其拆分为不同的段,并在段从屏幕滚动后删除.FromParent。

感谢looooooooooooooot !!! :)

2 个答案:

答案 0 :(得分:0)

我希望根据我的经验发表意见,尽管我在开发游戏方面经验不足

我在游戏中有一个要求,我需要在屏幕上滚动一个无限的条形图,其中一个英雄运行我使用图像创建了无限运行条。我使用的图像大于屏幕尺寸每当它到达图像的终点时,我就会通过创建一个具有特定速度的无限条来将图像重置为原始位置。尽管它没有回答你所有的问题,但这有帮助。

答案 1 :(得分:0)

使用您在ShapeNode中使用的方法。不要使线宽变大,而是制作另一条线,该线基本上是在特定像素数上移位的第一条线的副本。那会给你边界(就像一条路)。您可以设置碰撞和接触事件,以防止汽车离开道路或损坏撞墙的汽车等。

将第二面墙移过多少像素可以控制宽度。根据班次的不同,您可以轻松地使轨道变宽或变细。

创建一个随机在轨道中放置对象的算法。您可以使用两条边界线来计算产生这些对象的位置。