我编写了在屏幕上绘制矩形的应用程序。我想在 z 轴上移动这个矩形,但它不起作用。它消失了。我不知道如何修复它。代码:package game;import org.lwjgl.opengl.GL;import static org.lwjgl.glfw.GLFW.*;import static org.lwjgl.opengl.GL11.*;public class Main { public static void main(String[] args) { glfwInit(); System.out.println("Hello World!"); long window = glfwCreateWindow(1280 ,720,"Title",0,0); glfwMakeContextCurrent(window); glfwSwapInterval(1); GL.createCapabilities(); /////////////////////////////// glTranslatef(0,0,5); /////////////////////////////// while(!glfwWindowShouldClose(window)){ glfwPollEvents(); glBegin(GL_QUADS); glVertex2f(-0.5f,0.5f); glVertex2f(-0.5f,-0.5f); glVertex2f(0.5f,-0.5f); glVertex2f(0.5f,0.5f); glEnd(); System.out.println(z); glfwSwapBuffers(window); } System.exit(0 ); }}
1 回答
Helenr
TA贡献1780条经验 获得超3个赞
默认情况下,仅显示立方体内 x、y、z 坐标为 -1 到 1 的内容。由于glTranslatef
在代码的开头,您有效地在坐标处渲染了一个正方形
(-0.5f,0.5f,5), (-0.5f,-0.5f,5), (0.5f,-0.5f,5), (0.5f,0.5f,5)
它位于立方体之外,因此未显示。
要更改渲染内容的坐标,我建议查看glOrtho
和glFrustum
。您还glFrustum
可以在 3D 透视图中看到事物。
添加回答
举报
0/150
提交
取消