我想在LWJGL中渲染一些网格物体。 当我使用默认方式渲染对象(glVertex3f等)时,没有问题。 但是当我想使用显示列表渲染对象时,屏幕是空的。 我使用相同的代码初始化显示列表,我将其用于默认渲染。
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);
我不知道,为什么这不起作用
使用显示列表时我应该注意什么?
答案 0 :(得分:0)
看起来您可能错过了对glEndList()
的调用。在完成在显示列表中渲染所需的所有内容之后,在调用glCallList()
之前,您需要调用它。