默认摄像头在哪里?

aca*_*ana 2 opengl

我读到如果我不初始化它,OpenGL 将使用默认相机。

这款相机有什么配置?我一直在尝试使用一些基本的三角形,看起来相机面向0,0,10,0,0我假设向上向量是0,1,0

有人可以告诉我这是否正确?有什么办法可以改变默认的相机设置吗?

Rab*_*d76 8

OpenGL没有“相机”。如果您不使用任何变换(或者所有变换矩阵都是单位矩阵),那么您必须指定标准化设备空间中的顶点坐标。
标准化设备空间是一个独特的立方体,左、下、近为(-1,-1,-1),右、上、远为(1,1,1)。
因此,顶点坐标 (x) 的第一个分量定义从左侧 (-1) 到右侧 (1) 的位置。第二个分量 (y) 定义从底部 (-1) 到顶部 (1) 的位置,第三个分量 (z) 定义从近处 (-1) 到远处 (1) 的深度。
因此“向上向量”是(0,1,0)。

通常,场景的每个网格都由模型矩阵、视图矩阵和投影矩阵进行变换。最后将投影场景映射到视口。

投影、视图和模型矩阵相互作用,在视口上呈现场景的对象(网格)。模型矩阵定义场景世界空间中单个对象(网格)的位置方向和比例。视图矩阵定义了场景内观察者(查看者)的位置和观看方向。投影矩阵定义了投影到视口上的相对于观察者(查看者)的面积(体积)。

如果您谈论“相机”,那么您指的是视图矩阵。视图矩阵将顶点坐标从世界空间变换到视图空间。如果你想要一个不同的世界坐标系,那么你必须定义一个适当的视图矩阵。