【问题标题】:Achieve Infinite Scrolling for a platformer game using cocos2d language objective c使用cocos2d语言objective c实现平台游戏的无限滚动
【发布时间】:2013-04-07 01:28:57
【问题描述】:

我正在尝试使用 cocos2d 库开发 2D 游戏。我还在学习这个框架。

请理解,我是游戏开发的新手,但对使用目标 c 进行编程并不陌生。

这是我在游戏开发工作中面临的问题 - 我觉得我缺少对如何开发无限滚动游戏的理论理解。你们中的任何人都可以为我提供一些指导吗?

以下是我对使用cocos2d框架实现无限滚动的理解:

  1. Cocos2d 有一个处理当前场景和场景转换的单例导演类

  2. 在当前场景中,我觉得我必须创建一个由多个图像组成的平台对象,并将它们作为子对象添加到当前层。并不断地对平台精灵运行一个移动动作。因此,当我检测到特定图像不在屏幕上时,我必须用另一个图像替换它。这样我就可以无限滚动了。

如果第 2 点不连贯,我很抱歉。我只是试图把我对如何无限滚动的理解。

你能帮我解决这个问题吗?

谢谢

【问题讨论】:

    标签: cocos2d-iphone scroll


    【解决方案1】:

    我剖析了如何使用 cocos2d-iphone in this article 实现滚动。您可能想要的是“假滚动”方法,其中两个背景图像移动并在一个完全离开屏幕后切换位置。

    您只想对背景层执行此操作,而不是单个精灵。你的世界并没有真正移动,它只是背景平移造成了移动的错觉。所有精灵等(玩家、敌人)的移动仍然是相对于屏幕坐标的。

    您会在 Shoot'em Up 项目的 code for my Learn Cocos2D 2 book 中找到一个有效的实现。

    如果你不想自己实现这个,KoboldTouch supports endless/infinite scrolling 用于瓷砖地图。在这里,游戏对象实际上会随着背景无限移动(直到浮动支持的最大坐标约为 +/- 1600 万点)。

    【讨论】:

    • 感谢您的链接。但我无法完全理解它。你能指出iOS中的平台框架吗?如果它们存在。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-11-25
    • 1970-01-01
    相关资源
    最近更新 更多