【发布时间】:2011-12-25 12:10:50
【问题描述】:
我正在制作一个游戏,其中某个对象(建模为 box2d 主体)必须遵循固定路径。有没有一种方法可以让我指定路径坐标并使每个 dt 的对象在其上前进?
谢谢
【问题讨论】:
标签: cocos2d-iphone box2d box2d-iphone
我正在制作一个游戏,其中某个对象(建模为 box2d 主体)必须遵循固定路径。有没有一种方法可以让我指定路径坐标并使每个 dt 的对象在其上前进?
谢谢
【问题讨论】:
标签: cocos2d-iphone box2d box2d-iphone
另一种选择:
【讨论】:
你应该使用 Kinematic body,但你不能手动改变它的位置,你必须改变它的速度才能正确应用动力学和碰撞。
我建议以下算法:
1st - 计算下一个 dt 身体在轨道上的位置。
2nd - 创建一个从身体所在位置到下一个位置的向量。
3rd - 规范化它。
4rd - 计算您需要多少速度才能使身体在下一个循环中处于该位置,并将该速度乘以向量。
5th - 将此向量应用于身体的线速度。
注意:确保运动体的阻力为零,以便计算第 4 步更容易。
我从来没有做过这样的事情,我认为可以这样做。 希望对你有帮助:)
【讨论】: