我正在尝试使用cocos2d库开发2D游戏。我还在学习这个框架。
请理解我是游戏开发的新手,但不是使用目标c进行编程的新手。
这就是我在游戏开发方面面临的问题 - 我觉得我错过了如何开发无限滚动游戏的理论知识。您是否有可能向我提供一些指导?
以下是我对使用cocos2d框架实现无限滚动的理解:
Cocos2d有一个处理当前场景和场景转换的单例导演类
在当前场景中,我觉得我必须创建一个由多个图像组成的平台对象,并将它们作为子项添加到当前图层。并不断对平台精灵运行移动动作。因此当我检测到特定图像在屏幕外时,我必须用另一个图像替换它。这样我就可以创建无限滚动。
如果第2点不一致,我很抱歉。我只是想了解如何无限滚动。
你能帮我解决这个问题吗?
由于
答案 0 :(得分:1)
我剖析了如何使用cocos2d-iphone in this article实现滚动。您可能想要的是“假滚动”方法,其中移动两个背景图像并在一个完全离开屏幕后切换位置。
您只想为背景图层执行此操作,而不是单个精灵。你的世界并没有真正感动,只是背景平移会产生运动的错觉。所有精灵等(玩家,敌人)运动仍然相对于屏幕坐标。
你会在Shoot'em Up项目的code for my Learn Cocos2D 2 book找到一个有效的实现。
如果您不想自己动手实施,KoboldTouch supports endless/infinite scrolling用于拼贴图。在这里,游戏对象实际上与背景一起无限移动(直到浮动支持的最大坐标,大约+/- 1600万点)。