相机与视口


23

我对相机坐标和视口坐标之间的差异到底有什么不清楚。任何人都可以澄清一下吗?

Answers:


40

相机就像是用来拍摄蝙蝠侠电影的相机。它存在于虚拟世界中,可以针对不同的场景,改变焦距和其他相机属性进行移动。您可以拥有许多相机并在它们之间切换。您甚至可以一次在多台相机上拍摄。

典型的相机坐标是:虚拟世界中的位置,朝向,向上矢量,视野等。

视口是电影屏幕。它是显示相机记录的图像的地方。在PC世界中,它是某个窗口中的屏幕区域或全屏图像。您可以一次显示来自多个摄像机的提要(例如,在2-4个玩家之间的控制台赛车游戏中)。

典型的视口坐标为:显示位置,高度和宽度。


0

视口坐标是其在屏幕上放置的坐标。(例如在win32窗口中)。

相机坐标是相机在视口内的位置,即在OpenGL应用程序中设置的2D / 3D空间内。摄像头不能超出该视口,因为它位于您设置的在Win32窗口中opengl可以执行其工作的空间中。


那并不完全准确。视口定义了从NDC空间到窗口空间的映射以进行顶点转换。在旧版的GL中,该映射也适用于栅格位置转换(但已删除)。尽管如此,仍有许多 GL操作不受顶点转换的限制,因此您可以执行诸如清除视口外部的颜色缓冲区之类的操作。实际上,将缓冲区清除限制在帧缓冲区的特定区域的唯一方法是完全使用另一种称为剪刀盒(glScissor (...))的东西。
Andon M. Coleman 2014年
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.