opengl - 过剩看误会

标签 opengl glulookat

假设我确实进行了以下设置:

glBegin(GL_TRIANGLE_STRIP);
glTexCoord2f(0,0); glVertex3f(-10, 0, 0);
glTexCoord2f(1,0);  glVertex3f(10, 0, 0);
glTexCoord2f(0,1); glVertex3f(-10, 0, 5);
glTexCoord2f(1,1); glVertex3f(10, 0, 5);
glEnd();

我执行以下操作

gluLookAt(0,0,10, 0,5,0, 0,1,0);

我最终应该得到一个像下面这样的“虚拟世界”,对吗?

enter image description here

由于一个奇怪的原因,屏幕上没有出现任何内容,我不明白为什么。有什么想法吗?

最佳答案

看起来你在三角形中颠倒了 Y 轴和 Z 轴。您可能想这样写:

glTexCoord2f(0,0); glVertex3f(-10, 0, 0);
glTexCoord2f(1,0);  glVertex3f(10, 0, 0);
glTexCoord2f(0,1); glVertex3f(-10, 5, 0);
glTexCoord2f(1,1); glVertex3f(10, 5, 0);

这更符合您在问题中附加的数字。

关于opengl - 过剩看误会,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17306350/

相关文章:

OpenGL gluLookAt() 未按预期工作

python - 如何在 PyOpenGL 中使用 gluLookAt?

c++ - 用 glm::Quat(ernions) 模拟 gluLookAt

opengl - 无法使用矢量在 OpenGL 中将相机俯仰角限制在 [-90º, 90º] 之间!

c++ - 在 OpenGL 中创建不可变缓冲区

opengl - 由于 gluPerspercitve 导致法线反转?

android - OpenGL ES : glOrtho() shows object, 但 gluPerspective() 没有

c++ - 顶点可以在凸多边形中重合吗?

c# - OpenGL C# (OpenTK) 加载和绘制图像功能不起作用

opengl - 非单调深度缓冲区; OpenGL 中的循环重叠