我已经广泛搜索了如何使 Box2d 主体沿着贝塞尔曲线或弧形路径移动,其中包含起点、终点和可能的另一个控制点。我知道 cocos2d 对象可以使用 ccBezier 移动,但如何为 Box2d 主体完成呢?请帮忙。提前致谢。
问问题
1946 次
1 回答
1
我尝试使用曲线移动 box2d 主体(让蜘蛛绕小行星行走)。我发现使用 SetTransform 每一帧都有效,但它使引擎中的碰撞响应失败。
通过使用棱柱接头,我能够找到更好的解决方案。您从要开始的位置 (p0) 创建一个关节,并指向下一个航路点 (p1)。然后让关节使用电机将身体从 p0 推到 p1。当身体非常接近下一个点时,破坏关节并为接下来的两个点形成一个新的关节。身体仍然有它的速度,所以运动看起来很平滑。
我在 Stack Overflow 上发表了一篇更完整的文章。
这个有帮助吗?
于 2013-11-14T02:00:52.333 回答