私は、OpenGlとC++で動く回転ポリゴンを実装しようとしています。
移動と回転はXZ平面に沿って行われます(2D変換のみ)。
ポリゴンは、中心点とその中心点からのオフセットとして座標が格納された頂点のセットによって定義されます。
ポリゴンは、移動した距離を中心点に単に加算し、オフセット値を中心座標に加算して頂点を更新するだけで、XまたはZ方向のいずれかでユーザーのキーを押すことに基づいて移動されます。
中心点に対する回転は、glRotatef()関数を使用して実装されます。
しかし、私は衝突検出計算のための頂点の座標を知る必要があります。 変換されたポリゴンの頂点座標を取得するだけで、マトリックス操作を自分で実行することはありませんか?OpenGlポリゴンの回転
3
A
答えて
2
だけで変換ポリゴンの頂点座標を取得するチャンスがあります...
OpenGLは、数学ライブラリではありません。これは描画のためのものです。また、固定機能OpenGLのマトリックス操作機能は廃止され、OpenGL-3コア以降も削除されています。
自分でマトリックス操作を実行しないでください。
これは実際にこれを行うための推奨方法です。覚えておいてください:OpenGLはあなたの描画ツールであり、3Dレンダラ - ゲーム - シミュレーション - エンジン - 数学 - ジオメトリツールキットではありません。
2
glRotatef関数は、画面上に回転を得るためにスタック上に存在する現在の行列と乗算される行列を作成します。その行列を得ることができたとしても、それをあなたのベクトルと掛け合わせて、あなたが望む値を得る必要があります。これは、あなたが数学を自分でやった場合に必要なことです。 datenwolfが言ったように、2次元または3次元の世界でオブジェクトを操作するために必要なすべてのものを実行する数学ライブラリを自分で作成する方が良いでしょう。
関連する問題
- 1. OpenGLで回転
- 2. 回転点openGL
- 3. Openglでの回転
- 4. 2DでのOpenGLの回転
- 5. OpenGL回転の問題
- 6. 三角回転のOpenGLシーケンス
- 7. OpenGLのz軸回りの回転
- 8. WPFポリゴン回転トランスフォームは移動方向を回転します
- 9. 回転するOpenGL-ESオブジェクト
- 10. OpenGL定回転角度
- 11. 回転オブジェクトOpenGL ES 2.0
- 12. 回転時のWinAPIポリゴン変形
- 13. OpenGL C++回転中心のオブジェクトを中心に回転する
- 14. ポリゴンを回転させる方法は?
- 15. OpenGL C++で回転軸を回転する方法は?
- 16. OpenGL androidのキューブ回転の問題
- 17. OpenGLでの回転について
- 18. openglのオブジェクトを回転する
- 19. 四元からOpenGLの回転に
- 20. OpenGL 2つのキーでカメラを回転
- 21. OpenGLカメラの回転ちらつき
- 22. 2軸のOpenGLシーンを回転する
- 23. Android OpenGLオブジェクトの移動と回転
- 24. OpenGLで0に回転する
- 25. ベクター(OpenGL ES)で回転する
- 26. オブジェクトを回転させるOpenGL GLFW
- 27. 2Dテクスチャを回転させたOpenGL
- 28. GLKitでOpenGL ESオブジェクトを回転する
- 29. OpenGL ES世界を回転する
- 30. オブジェクトを回転させたOpenGLライト
ありがとうございました。本当に役に立ちました。 – itsraining