如何正确使用gluLookAt?

如何正确使用gluLookAt?,第1张

如何正确使用gluLookAt?

(gluLookAt中“向上”向量背后的直觉很简单:看任何东西。现在将头倾斜90度。您的位置没有改变,您所看的方向没有改变,但是您的图像视网膜显然具有。有什么区别?头顶指向的位置。这就是向上的方向。)

但是要回答您的问题:不应将gluLookAt调用串联在一起。换句话说,如果您不确定确切的工作方式,则可以使用gluLookAt的唯一模式如下:

glMatrixMode(GL_MODELVIEW);glLoadIdentity();gluLookAt(...);# do not touch the modelview matrix anymore!

从您的代码看来,您正在执行以下 *** 作:

glMatrixMode(GL_MODELVIEW);glLoadIdentity();gluLookAt(...);# some stuff..gluLookAt(...);

这将产生奇怪的结果,因为gluLookAt将当前矩阵乘以它计算的视图矩阵。如果要串联转换,最好弄清楚如何使glTranslate,glScale和glRotatef为您工作。更好的是,您应该了解坐标转换的工作原理并坚持使用glMultMatrix。



欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5655165.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-16
下一篇 2022-12-16

发表评论

登录后才能评论

评论列表(0条)

保存