0

注意:我对编程比较陌生,甚至更是如此游戏编程,所以如果我的问题相当广泛,但很难找到该主题的教程,我深表歉意。

项目描述

一个简单的无尽横向滚动跑步者,类似于Canabalt,玩家可以点击屏幕使角色跳跃。角色精灵唯一允许的移动是沿着 y 轴。

我有的...

  • 滚动视差背景。

我想要的是...

  • 具有边界框的角色精灵
  • 具有边界框的地面精灵
  • 一种判断何时接触/相交的方法
  • 一种防止它们继续相交的方法

我试过的...

我的问题实际上有两个部分:

  • 对于物理学初学者,是否建议坚持使用 Chipmunk 或 Box2D 之类的 API?
    if first question == FALSE
  • 鉴于上述信息,构建我自己的物理引擎的最佳方法是什么?

提前感谢您分享的任何提示/建议。:)

4

1 回答 1

1

我可以建议使用 Chipmunk。和你一样,我也想构建一个具有简约但高效的碰撞检测和力操纵系统的游戏。在经历了很多挫折和尝试实现一些基本物理学之后,我放弃了并决定学习引擎。花栗鼠虽然乍一看很吓人,但实际上学习起来非常简单。我已经能够在项目中使用它来进行简单、高效的碰撞检测以及成熟的物理模拟。

有几个不同版本的花栗鼠(花栗鼠 pro、工作室等)可以说比原始版本更容易使用。在阅读了花栗鼠中提供的一些代码示例后,我设法告别了基本的花栗鼠。此外,SpaceManager 是 obj-c 中花栗鼠的包装器,它允许您忽略所有基于 c 的函数。它提供了许多方便的方法来构建空间、添加身体和精灵以及操作对象。可以在这里找到:http ://code.google.com/p/chipmunk-spacemanager/

除非您非常非常精通物理的许多领域,否则不要尝试实现自己的引擎。

于 2013-04-27T01:53:42.543 回答