次の問題を解決できないようです。私は、libGDXに設定された遠近法のカムを持っています。 .rotateAroundルーチンを使用してカメラを回転させます。これは、ローコストの周りを回転するときに完全に機能します。しかし、回転する軸の座標が高くなればなるほど、回転がより不規則になります。LibGDXカメラが軸高座標ジャークを回転する
@Override
protected boolean process(float deltaX, float deltaY, int button) {
if (button == Buttons.LEFT) {
// DRAG CAMERA
} else if (button == Buttons.RIGHT) {
// ROTATE CAMERA
perspectiveCam.rotateAround(new Vector3(clickedX, clickedY, 0), Vector3.Z, deltaX * -100);
}
return true;
}
この作品:
perspectiveCam.rotateAround(new Vector3(0f, 0f, 0f), Vector3.Z, deltaX * -100)
等、再度ドラッグ、急回転に続いて、ドラッグ小部分に以下のコードの結果:
私CameraInputControllerクラスにおいてperspectiveCam.rotateAround(new Vector3(100000f, 100000f, 0f), Vector3.Z, deltaX * -100)
私はそれが翻訳し、次にカムを回転させ、翻訳してカメラを戻します。誰かが私を正しい方向に向けることができますか?それは半径/浮動小数点値で何かですか?
ありがとうございます!
EDIT: 'バグ' は、ここを参照してください: rotating gif
im curiouos、Vector3.Zはどんな値を返しますか? O.o – Hllink
Vector3.Zは新しいVector3(0,0,1)です!軸は私のカメラを回しています...編集:第1パラメータベクトル3は回転ベクトルが設定されているポイント、第2パラメータは回転する軸(Vector.Z)、第3パラメータは角度(浮く)。 – user2150129