Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/357.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java LWJGL-显示列表不工作_Java_Opengl_Lwjgl_Displaylist - Fatal编程技术网

Java LWJGL-显示列表不工作

Java LWJGL-显示列表不工作,java,opengl,lwjgl,displaylist,Java,Opengl,Lwjgl,Displaylist,我想在LWJGL中渲染一些网格。 当我使用默认方式渲染对象(glVertex3f等)时,没有问题。 但是当我想使用显示列表渲染对象时,屏幕是emty。 我使用相同的代码初始化显示列表,这是我用于默认渲染的代码 glViewport(0, 0, getWidth(), getHeight()); glMatrixMode(GL_PROJECTION); glLoadIdentity(); gluPerspective(45.0f, getHeight() / getHeight(), 1.0f,

我想在LWJGL中渲染一些网格。 当我使用默认方式渲染对象(glVertex3f等)时,没有问题。 但是当我想使用显示列表渲染对象时,屏幕是emty。 我使用相同的代码初始化显示列表,这是我用于默认渲染的代码

glViewport(0, 0, getWidth(), getHeight());
glMatrixMode(GL_PROJECTION);
glLoadIdentity();
gluPerspective(45.0f, getHeight() / getHeight(), 1.0f, 1000.0f);
glMatrixMode(GL_MODELVIEW);
glEnable(GL_DEPTH_TEST);
glLoadIdentity();
//...
this.displayList = glGenLists(1);
//...
glNewList(displayList, GL_COMPILE);
//[same code I use for the default rendering way]
GL11.glEndList();
//...
glCallList(displayList);
我不知道为什么这不起作用


在使用显示列表时,有什么我应该注意的吗?

看起来您可能错过了对
glEndList()
的调用。您需要在完成显示列表中所需的所有内容的渲染后调用该函数,然后在调用
glCallList()

之前,我假设您调用了
glEndList()
中的某个地方,
哦,抱歉,这是一个写入错误。我的意思是GL11.glEndList();而不是GL11.glEnd();不过还是要谢谢你的帮助!啊,好吧,那就没那么容易了。您使用的是哪种渲染命令?有关显示列表中不支持的呼叫的列表,请参阅。我知道这不是一个答案,但既然这是我现在的评论,我还是要说:只要说不就可以显示列表。它们已经过时至少15年了。