3

所以可以说我正在制作棋盘游戏。我有一个游戏板阵列,我的逻辑需要检查位置和碰撞检测,没关系。

传统上使用像directX这样的东西,你会有一个游戏循环,测试一些逻辑,更新游戏板数组,最后绘制屏幕,​​但是使用cocos2dx我们不直接在屏幕上绘制,我们将精灵添加到图层中,其余的由cocos完成!

例如..

  • 初始化一个代表游戏板的游戏数组
  • 初始化一个游戏对象
  • 将对象添加到数组
  • 更新屏幕(将数组渲染到屏幕)
  • 开始游戏循环
  • 测试一些逻辑条件
  • 从数组中删除对象
  • 更多 测试一些逻辑条件,更新对象位置
  • 将对象添加到数组
  • 再次更新屏幕
  • 环形

前一个可以正常工作,但我不需要从图层中删除对象,只需更新其位置并重新渲染到屏幕,如果我保留对该对象的引用,我可以使用 cocos2d/cocos2dx 移动它,并且更新数组。

我可以继续这种方法,但我想知道我是否遗漏了什么。

游戏阵列有助于游戏逻辑并模仿实际的可玩区域,但我不禁觉得它有点石器时代。

有人可以帮忙吗,我完全错过了情节吗?

4

2 回答 2

3

所有游戏引擎都使用更新循环。没有它,您将不会渲染任何内容。

也就是说,如果您的游戏完全由用户输入驱动,您可以对用户输入事件(触摸)做出反应,然后才执行游戏逻辑(移动或移除棋子、检查获胜条件、更新分数、下一回合)。

如果您想要“新派”,那么您将看到的是游戏设计工具,而不是游戏引擎。

于 2012-05-02T20:06:09.223 回答
1

这对我来说看起来不错。要记住的是,在您的游戏循环期间,您将能够处理使棋盘游戏保持有趣的动画。我认为这并不过分,你总能找到动画的东西。

于 2012-05-02T02:16:47.003 回答