1

チュートリアルを見ていると、Ogre :: Camera::getCameraToViewportRayメソッドが使用されているのがわかりました。私はそれが何をするのか理解しようとしていました。

最初に、3Dシーンのどこかに配置されているビューポートを想像します。たとえば、TVオブジェクトの画面上に配置されます。ビューポートの2D座標をシーンの3D座標に変換し、カメラの位置ポイントからVPのそのポイントを通過する光線を作成する方法を簡単に想像できます。

しかし、VPが(私のモニターの)RenderWindowにあるとき、それがどのように行われるのか理解できません。つまり、シーン内のレンダーウィンドウはどこにあり、シーン内のレンダーウィンドウのVP上のポイントはどこにありますか?レンダーウィンドウのVP上のポイントは、シーンの3Dポイントにどのように変換されますか?

ご回答ありがとうございます!

4

1 に答える 1

1

ビューポートにはカメラを通して見たものが表示されますが、ビューポートはカメラの前にあります。

カメラとビューポートの関係に関する情報と素敵なビジュアルイラストを含むstackoverflowの投稿があります:https ://stackoverflow.com/a/7125486/2168872

カメラからビューポートへの光線は、カメラから始まり、マウスカーソルが指す場所など、特定のポイントでビューポートと交差するワールドスペース光線です。

于 2013-03-16T06:39:48.887 に答える