我正在我的太空模拟游戏中制作一个人工智能,并试图在敌人的方向向量和某个目标的方向之间获得俯仰和偏航。这是向目标移动的方法:
private void moveTo(Vecf target) {
if (target == null)
return;
Vecf dir = getForward();
Vecf dirToTarget = Vecf.sub(target, pos).normalize();
float dYaw = getYaw(dir, dirToTarget);
float dPitch = getPitch(dir, dirToTarget);
rotate(dPitch, dYaw);
moveForward();
}
我已经编写了 getYaw(Vecf v1, Vecf v2)
方法,但我不知道如何处理音调。有人可以帮我弄这个吗?顺便说一句,角度以弧度为单位。
答案 0 :(得分:0)
你需要向前和向上的向量来计算俯仰和偏航