如何使box2d身体以螺旋运动方式移动?我相信它需要施加一些力量,但我不确定如何。我将不胜感激任何帮助。
答案 0 :(得分:0)
您可以使用中间隐形体将关节链接在一起。用一个旋转关节将中心的一个身体固定在地面上,从那个身体到真实的一个棱柱体。两个关节=两个马达=两个可控制的自由度。
答案 1 :(得分:0)
你将有两种力量,一种切向力和一种径向力。
切向力使身体围绕中心加速。
径向力使身体朝向或远离中心加速。
radialVector = (objectPosition - spiralCenter).normalize();
tangentialVector = radialVector.perpendicularVector();
forceTangential = tangentialForceMagnitude * tangentialVector;
forceRadial = radialForceMagnitude * radialVector;
force = forceTangential + forceRadial;
object.applyForce(force);
力量值的具体值将决定螺旋的行为;像是向内或向外运动,以及有多快。
我回答了一个关于制作漩涡/漩涡的相关问题:SO: How to create whirlpool/vortex effect?