在浏览教程时,我看到正在使用 Ogre::Camera::getCameraToViewportRay 方法。我试图了解它的作用。
首先,我想象一个视口被放置在 3D 场景中的某个位置,比如电视对象的屏幕上。我可以很容易地想象如何将视口上的 2D 坐标转换为场景的 3D 坐标,然后从相机位置点通过 VP 上的该点发出射线。
但是当VP在RenderWindow(在我的显示器上)上时,我无法理解它是如何完成的。我的意思是,场景中的渲染窗口在哪里,场景中渲染窗口的VP上的点在哪里?渲染窗口的 VP 上的点如何转换为场景的 3D 点?
感谢您的回答!