在相关方向向 Box2D 主体施加力

Posted

技术标签:

【中文标题】在相关方向向 Box2D 主体施加力【英文标题】:Apply Force to Box2D body in related direction 【发布时间】:2013-01-20 06:11:56 【问题描述】:

我正在创建一款基于物理的游戏。如图所示,我有一个坦克。它的头部是可旋转的,所以我想向坦克头部当前角度的方向发射一个球。如何对这个身体施加力,使其能够朝着坦克头部的方向移动?

【问题讨论】:

Archery game programming algorithm 的可能副本(不要忘记将旋转从度数转换为弧度) ***.com/questions/9164146/… 【参考方案1】:
body->SetActive(true);
float magnitude=800;
b2Vec2 force = b2Vec2((cos(body->GetAngle()-4.7) * magnitude) , (sin(body->GetAngle()-4.7) * magnitude));
body->ApplyLinearImpulse(force, body->GetPosition());

【讨论】:

以上是关于在相关方向向 Box2D 主体施加力的主要内容,如果未能解决你的问题,请参考以下文章

来人啊。。。。flash as3.0 box2d停止刚体移动问题。

ansys 如何在节点上施加力

改变移动 SKSpriteNode 的方向?

abaqus,如何定义一个集中力?关键是集中力的点如何确定?

cocos2d + box2d:向点旋转

ansys中如何通过旋转坐标系施加某角度的力?