OpenGL®プロジェクションとは何ですか?
OpenGL®プロジェクションは、3次元(3D)オブジェクトを、画面に表示できる位置合わせされた2次元(2D)画像に変換した結果のプロセスおよび画像です。 コンピュータグラフィックスプログラミングの「投影」という言葉は、シーン内の3Dオブジェクトを仮想2Dサーフェスに数学的に移動または投影して、デバイスのフラットディスプレイに表示する必要があるという事実を指します。 3Dオブジェクトを取得して2Dサーフェスにレンダリングするイベントシーケンス全体を投影と呼びますが、この用語は、他のセット間のステップとして発生するグラフィックスパイプラインの特定のジオメトリ変換セットにもより厳密に適用されます変換。 プログラマーが使用できるOpenGL®投影モードの2つの特定のタイプは、遠近法と正投影法です。
OpenGL®プロジェクションを作成する際の課題は、特定のシーン内のすべてのオブジェクトを含むデータを取得し、スクリーンに表示されるときにオブジェクトがプロジェクションモード、表示ボリューム、仮想カメラ設定と一致するように調整することです。 表示ボリュームは、シーン内の視聴者の位置からのシーンの可視領域、または目の位置です。 表示フレームの仮想中心からの右、左、上、下の距離など、6つの数値が表示ボリュームを定義します。 さらに、ニアプレーンとファープレーンとして知られる2つの値は、表示ボリュームの深さを定義します。 このボリュームは、投影されるオブジェクトを定義しますが、ボリュームの外側にある他のすべてのオブジェクトは無視されるか、非表示部分が評価されないようにクリップされます。
使用できるOpenGL®投影の最初のモードは、正射投影として知られています。 このモードでは、シーン内のオブジェクトの座標は、ビューアーまたは視点からの距離に対して調整されません。 つまり、ビューアーからの距離に関係なく、すべてのオブジェクトが同じサイズで描画されます。 このOpenGL®投影モードは、3Dポリゴンを使用して2D合成画像を作成し、正確な遠近感を必要としない3Dモデリングプログラム、エンジニアリング設計プログラム、およびアプリケーションで最もよく使用されます。
より一般的に使用されるOpenGL®投影モードは、透視投影として知られています。 透視投影モードでは、シーン内のオブジェクトは、視聴者からの距離に応じてスケーリングおよび配置されます。 これは、より遠くにあるオブジェクトがより小さく見えることを意味します。 また、シーン内のオブジェクトは、消失点と呼ばれる表示範囲内のある点にゆっくりと収束するように調整されることも意味します。 透視投影は、現実の世界がどのように表示されるかを厳密にモデル化し、技術的なものとは対照的に現実的なレンダリングを作成するために使用されます。