トップページ > 過去ログ > 記事閲覧
3Dのカメラの回転順序について
名前:まみー 日時: 2012/01/20 16:07

現在3Dでのカメラの回転を行おうと考えています。 現在の仕様では回転の順序は記述順であるとするなら Pitch,Yaw,Rollとなっていると思うのですが、 これらの回転順序の指定などは行えないのでしょうか? 単純に3回カメラの回転を指定したのですが、 最後の1回のみ反映されるようでした。 ご回答いただければありがたいです。

Page: 1 |

Re: 3Dのカメラの回転順序について ( No.1 )
名前:いっち 日時:2012/01/20 21:41

> 単純に3回カメラの回転を指定したのですが、 > 最後の1回のみ反映されるようでした。 すみません、状況が良く分かりません。 再現させるためのコードをご提供いただけますか?
Re: 3Dのカメラの回転順序について ( No.2 )
名前:まみー 日時:2012/01/23 14:24

わかりづらくてすいません。 カメラを回転させたい順番に3回 SetCameraPositionAndAngle( VGet(0.0f ,0.0f ,0.0f ),0.0f,0.0f,camRoll); SetCameraPositionAndAngle( VGet(0.0f ,0.0f ,0.0f ),camPitch,0.0f,0.0f); SetCameraPositionAndAngle( VGet(0.0f ,0.0f ,0.0f ),0.0f,camYaw ,0.0f); のように指定したのですが、 反映されるのは最後の SetCameraPositionAndAngle( VGet(0.0f ,0.0f ,0.0f ),0.0f ,camYaw ,0.0f ); だけでした。 おそらく仕様だと思うのですが、カメラの回転順序の変更はできないのでしょうか?
Re: 3Dのカメラの回転順序について ( No.3 )
名前:いっち 日時:2012/01/24 19:33

SetCameraViewMatrix でビュー行列を直接設定してしまえば出来ると思います。 ・・・思うのですが、SetCameraViewMatrix はおそらく CreateLookAtMatrix と 組み合わせて使用することを想定していると思うので SetCameraPositionAndAngle で 使用するパラメータからビュー行列を作るのは少し面倒かもしれません。
Re: 3Dのカメラの回転順序について ( No.4 )
名前:まみー(解決) 日時:2012/01/26 20:13

SetCameraViewMatrixとCreateLookAtMatrixでいろいろ試行錯誤したらできました。 ありがとうございました。

Page: 1 |