0
我試圖編寫一個使用lwjgl的程序,它涉及在第一人稱飛行,有點像FPS遊戲中的觀衆模式 - 您可以在任何方向飛行。我知道如何做一個FPS相機在地面上行走,但這也應該上下。我嘗試過做一些事情,但這種做法非常不準確。lwjgl FPS觀衆模式
下面的代碼是負責相機角度類(正y是向上):
public void move(double mx, double my, double mz)
{
this.x += mx;
this.y += my;
this.z += mz;
}
public void moveForward()
{
rx = toDeg(rx);
float speed = 0.25f;
double xsin = Math.sin(Math.toRadians(rx));
double ysin = Math.sin(Math.toRadians(
(ry + Math.signum(toDeg(rx + 90.00001f) - 180) * -90)
));
double ycos = Math.cos(Math.toRadians(
(ry + Math.signum(toDeg(rx + 90.00001f) - 180) * -90)
));
this.move(speed * ycos, speed * xsin, speed * ysin);
}
謝謝!
請不要混淆了答案和問題 - 即使你自己回答這些問題。如果你能糾正這種情況,那將會很好。 – Jost