每当我运行此程序时,都会弹出窗口,并且看到此内容。
(When I run the game, I see this)

如果您仅创建一个新的Java项目,导入OpenGL,GLFW和LWJGL以及本机,然后复制代码(删除程序包),则可以重新创建此代码。

import static org.lwjgl.glfw.GLFW.*;
import static org.lwjgl.opengl.GL11.*;
import org.lwjgl.opengl.GL;

public class Game {

    public static void main (String[] args) {

        if(glfwInit() != true) {
            System.err.println("GLFW Failed to initialize!");
            System.exit(1);
        }

        long window = glfwCreateWindow(640,480,"Game", 0, 0);

        glfwShowWindow(window);

        glfwMakeContextCurrent(window);
        GL.createCapabilities();

        while(!glfwWindowShouldClose(window)) {

            glfwPollEvents();

            glClear(GL_COLOR_BUFFER_BIT);

            glBegin(GL_QUADS);

            glVertex2d(-0.5,0.5);
            glVertex2d(0.5,0.5);
            glVertex2d(-0.5,-0.5);
            glVertex2d(0.5,-0.5);

            glEnd();

            glfwSwapBuffers(window);

        }

        glfwTerminate();

    }

}

最佳答案

您以错误的顺序绘制了四边形的顶点。尝试

glVertex2d(0.5,0.5);
glVertex2d(-0.5,0.5);
glVertex2d(-0.5,-0.5);
glVertex2d(0.5,-0.5);


您通常以逆时针方向绘制一个面对您的四边形(或三角形)(称为“绕组”),以顺时针方向绘制一个背对您的正方形。在您的情况下,您将它们绘制为好像是字母“ Z”一样无效。

09-30 15:28