我正在跟随一个教程学习OpenGL,他们使用了
GLM文档说:
glm::lookAt()
函数来构建视图,但我无法理解glm::lookAt()
的工作原理,而且似乎也没有关于GLM的详细文档。有人能帮助我理解glm::lookAt()
的参数和工作原理吗?GLM文档说:
detail::tmat4x4<T> glm::gtc::matrix_transform::lookAt
(
detail::tvec3< T > const & eye,
detail::tvec3< T > const & center,
detail::tvec3< T > const & up
)
我的理解是相机位于眼睛
位置,并面向中心
。(我不知道上方
是什么)
up
向量明确定义了上(Y)轴,其他两个向量是根据从eye
到center
的方向(有时称为forward
向量或 Z 轴)以及 Z 轴和 Y 轴之间的叉积来计算出 X 轴(left
向量),该轴垂直于两个轴。除了轴之外,LookAt 还定义了原点。 - Andon M. Coleman