我想试试 LWJGL。我使用了 LWJGL-Wiki 中的教程,但我的代码仍然会产生黑屏。
import static org.lwjgl.opengl.GL11.*;
import org.lwjgl.LWJGLException;
import org.lwjgl.opengl.Display;
import org.lwjgl.opengl.DisplayMode;
public class SimpleOGLRenderer {
public void start() {
try {
Display.setDisplayMode(new DisplayMode(800, 600));
Display.setTitle("Sandbox");
Display.create();
} catch (LWJGLException e) {
e.printStackTrace();
System.exit(0);
}
glMatrixMode(GL_PROJECTION);
glLoadIdentity();
glOrtho(0.0f, 800f, 600f, 0.0f, -1.0f, 1.0f);
glMatrixMode(GL_MODELVIEW);
while (!Display.isCloseRequested()) {
glClear(GL_COLOR_BUFFER_BIT);
glBegin(GL_QUADS);
glVertex2i(400, 400);
glVertex2i(500, 400);
glVertex2i(500, 500);
glVertex2i(400, 500);
glEnd();
glBegin(GL_LINES);
glVertex2i(100, 100);
glVertex2i(200, 200);
glEnd();
Display.update();
Display.sync(60);
}
Display.destroy();
}
public static void main(String[] args) {
SimpleOGLRenderer s = new SimpleOGLRenderer();
s.start();
}
}
运行设置中的调试器
-Dorg.lwjgl.util.Debug=true
节目
[LWJGL] Initial mode: 1920 x 1200 x 32 @60Hz
[LWJGL] MemoryUtil Accessor: AccessorUnsafe
我不知道出了什么问题,所有改变颜色(LWJGL - 黑屏)清除屏幕(LWJGL OpenGL 黑屏)的提示都不起作用。
我使用戴尔 Insipron 1720 和 GeForece 8600M GT、Windows 7、64 位和 DirectX v11。
你能找到我的bug吗?