OpenGLでGlobeオブジェクトを描いて指タッチで回転できるのですが、xとyの差を利用して回転しているのでうまく動かない場合があります
Rotation3D rot = sphere.currentRotation;
rot.x += diffX ;
rot.y += diffY ;
rot.z += 10 ;
sphere.currentRotation = rot;
指を右上から左下に移動すると、うまく機能しません。
何か案は ?
ありがとうピーター・ガブラ
オイラー角を使用している場合:オイラー角を使用して回転をモデル化しないことをお勧めします。代わりにクォータニオンを使用してください。コードが複雑になるように思えるかもしれませんが、クォータニオンを使用すると回転がうまく機能します。ここにいくつかの利点があります:
Apple が使用する Quaternion タイプを提供していることに注意してください: GLKQuaternion。独自の Quaternion クラスを記述する必要はありません。
以下も参照してください。