如何使box2d体沿Bezier曲线/弧形路径移动

时间:2012-09-04 22:44:06

标签: cocos2d-iphone box2d physics game-physics box2d-iphone

我已经广泛搜索了如何使Box2d体沿着Bezier曲线或弧形路径移动,具有起点,终点和可能的另一个控制点。我知道cocos2d对象可以使用ccBezier移动,但是如何为Box2d体做呢?请帮忙。提前谢谢。

1 个答案:

答案 0 :(得分:0)

我曾尝试使用曲线移动box2d体(让蜘蛛绕着小行星行走)。我发现使用SetTransform每个帧都有效,但它使引擎中的碰撞响应失败。

通过使用棱柱关节,我能够找到更好的解决方案。您可以从要从其开始的位置(p0)开始创建一个关节,并指向下一个航点(p1)。然后让关节使用电机将主体从p0推到p1。当身体非常接近下一个点时,摧毁关节并为接下来的两个点形成一个新关节。身体仍然有其速度,所以运动看起来很光滑。

I put a more complete post on this on Stack Overflow here

这有用吗?