【发布时间】:2012-02-19 19:14:03
【问题描述】:
所以我正在开发一款游戏,本质上,它是一个自上而下的球视图。当我点击球时,我基本上想向给定的方向发射它。这将是瞬间的力量(想想用球杆击打台球)。我正在尝试使用 applyImpulse 来执行此操作。
到目前为止,我得到了:
cpBodyApplyImpulse(sprite.body,
cpBodyLocal2World(sprite.body, cpv(0.0, 1.0)),
cpBodyLocal2World(sprite.body, cpv(0.0, 0.0))
);
据我了解,此函数采用的 2 个向量是“世界坐标”,所以我正在做的是在身体相对坐标中可视化所有内容,然后将它们转换为世界坐标。
根据我上面的代码,我认为球会直接向上发射而不会旋转,因为它是在重心处应用的正 y 方向上的向量。然而,球最终向右移动,无法控制地旋转。任何想法为什么会发生这种情况,以及我如何实现我想要做的事情?
【问题讨论】:
标签: objective-c cocos2d-iphone chipmunk