glNewList-Funktion

Die Funktionen glNewList und glEndList erstellen oder ersetzen eine Anzeigeliste.

Syntax

void WINAPI glNewList(
   GLuint list,
   GLenum mode
);

Parameter

list

Der Anzeigelistenname.

mode

Der Kompilierungsmodus. Die folgenden Werte werden akzeptiert.

Wert Bedeutung
GL_COMPILE
Befehle werden lediglich kompiliert.
GL_COMPILE_AND_EXECUTE
Befehle werden ausgeführt, während sie in die Anzeigeliste kompiliert werden.

Rückgabewert

Diese Funktion gibt keinen Wert zurück.

Fehlercodes

Die folgenden Fehlercodes können von der glGetError-Funktion abgerufen werden.

Name Bedeutung
GL_INVALID_VALUE
list war null.
GL_INVALID_ENUM
der Modus war kein akzeptierter Wert.
GL_INVALID_OPERATION
Die Funktion wurde zwischen einem Aufruf von glBegin und dem entsprechenden Aufruf von glEnd aufgerufen.

Bemerkungen

Anzeigelisten sind Gruppen von OpenGL-Befehlen, die für die nachfolgende Ausführung gespeichert wurden. Die Anzeigelisten werden mit glNewList erstellt. Alle nachfolgenden Befehle werden in der Anzeigeliste in der ausgegebenen Reihenfolge platziert, bis glEndList aufgerufen wird.

Die GlNewList-Funktion verfügt über zwei Parameter. Der erste Parameter list ist eine positive ganze Zahl, die zum eindeutigen Namen für die Anzeigeliste wird. Namen können mit glGenLists erstellt und reserviert und mit glIsList auf Eindeutigkeit getestet werden. Der zweite Parameter, mode, ist eine symbolische Konstante, die einen der beiden vorherigen Werte annehmen kann.

Bestimmte Befehle werden nicht in die Anzeigeliste kompiliert, sondern sofort ausgeführt, unabhängig vom Anzeigelistenmodus. Diese Befehle sind glColorPointer, glDeleteLists, glDisableClientState, glEdgeFlagPointer, glEnableClientState, glFeedbackBuffer, glFinish, glFlush, glGenLists, glIndexPointer, glInterleavedArrays, glIsEnabled, glIsList, glNormalPointer, glPopClientAttrib, glPixelStore, glPushClientAttrib, glReadPixels, glRenderMode, glSelectBuffer, glTexCoordPointer, glVertexPointer und alle glGet-Routinen .

Auf ähnliche Weise werden glTexImage2D und glTexImage1D sofort ausgeführt und nicht in die Anzeigeliste kompiliert, wenn ihr erstes Argument GL_PROXY_TEXTURE_2D bzw. GL_PROXY_TEXTURE_1D ist.

Wenn die glEndList-Funktion gefunden wird, wird die Definition der Anzeigeliste durch Zuordnen der Liste mit dem eindeutigen Namen abgeschlossen (im Befehl glNewList angegeben). Wenn eine Anzeigeliste mit Namensliste bereits vorhanden ist, wird sie nur ersetzt, wenn glEndList aufgerufen wird.

Die Funktionen glCallList und glCallLists können in Anzeigelisten eingegeben werden. Die Befehle in der Anzeigeliste oder den listen, die von glCallList oder glCallLists ausgeführt werden, sind nicht in der anzeigeliste enthalten, die erstellt wird, auch wenn der Listenerstellungsmodus GL_COMPILE_AND_EXECUTE ist.

Die folgende Funktion ruft Informationen im Zusammenhang mit glNewList ab:

glGet mit Argument GL_MATRIX_MODE

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client)
Windows 2000 Professional [nur Desktop-Apps]
Unterstützte Mindestversion (Server)
Windows 2000 Server [nur Desktop-Apps]
Header
Gl.h
Bibliothek
Opengl32.lib
DLL
Opengl32.dll

Weitere Informationen

glBegin

glCallList

glCallLists

glDeleteLists

glEnd

glEndList

glGenLists

glIsList