我试图让我的相机以第一人称游戏的方式移动。我绘制的形状和方向看起来像走廊,所以我需要相机向前移动,就像你穿过走廊一样。我应该使用哪些代码行,以及应该将它们放在哪里?
最佳答案
你应该从对面看东西,而不是移动相机。相反,您移动世界,使其投影根据相机(实际上并不存在)位置而变化。
这通常是通过一个嵌入当前相机位置和方向的投影矩阵来完成的,并且在应用模型矩阵之后,该矩阵在着色器内部使用(请记住它不是对称的)。
看看 this获得必要知识的好教程。基本上一切都简化为:
gl_Position = camera * model * vec4(vertex, 1);
关于java - 如何在 OpenGL 中移动相机,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24658105/