【发布时间】:2010-10-20 22:25:38
【问题描述】:
我一直在为 iPhone 使用 cocos2D 中的 box2D 示例项目,我想知道 box2D 是否是合适的引擎,用于在移动对象完成特定移动时使移动对象“粘”到静止对象方向。
这是我想要实现的简化:我有 MovingObject,一个动态刚体,当施加足够的力时它会垂直移动。随着 MovingObject 移动,它可能会与静态对象 StationaryObject 重叠。当重力将 MovingObject 的速度减小到零以使其不再移动时,我希望 MovingObject 仅在与 StationaryObject 重叠时保持在原处。如果对象不重叠,MovingObject 应该开始根据重力向下向地面移动。在下降过程中,如果 MovingObject 在任何时候与 StationaryObject 重叠,它应该停止下降并保持在该位置,就好像它卡在 StationaryObject 上一样。
我能够让 MovingObject 根据我施加的力移动,但不确定如何让它在到达上升的顶部时停止并停留在那里,假设它与 StationaryObject 重叠。
目前,我正在尝试使用简单的方形/框对象,但最终两个 MovingObject StationaryObject 都将被定义为非常不同的复杂多边形形状。
提前感谢您为实现这一目标提供的任何见解和/或建议。
【问题讨论】:
标签: cocos2d-iphone collision-detection box2d game-physics box2d-iphone