Partager via


fonction glNewList

Les fonctions glNewList et glEndList créent ou remplacent une liste d’affichage.

Syntaxe

void WINAPI glNewList(
   GLuint list,
   GLenum mode
);

Paramètres

list

Nom de la liste d’affichage.

mode

Mode de compilation. Les valeurs suivantes sont acceptées.

Valeur Signification
GL_COMPILE
Les commandes sont simplement compilées.
GL_COMPILE_AND_EXECUTE
Les commandes sont exécutées à mesure qu’elles sont compilées dans la liste d’affichage.

Valeur renvoyée

Cette fonction ne retourne pas de valeur.

Codes d’erreur

Les codes d’erreur suivants peuvent être récupérés par la fonction glGetError .

Nom Signification
GL_INVALID_VALUE
list était zéro.
GL_INVALID_ENUM
mode n’était pas une valeur acceptée.
GL_INVALID_OPERATION
La fonction a été appelée entre un appel à glBegin et l’appel correspondant à glEnd.

Notes

Les listes d’affichage sont des groupes de commandes OpenGL qui ont été stockées pour une exécution ultérieure. Les listes d’affichage sont créées avec glNewList. Toutes les commandes suivantes sont placées dans la liste d’affichage, dans l’ordre d’émission, jusqu’à ce que glEndList soit appelé.

La fonction glNewList a deux paramètres. Le premier paramètre, list, est un entier positif qui devient le nom unique de la liste d’affichage. Les noms peuvent être créés et réservés avec glGenLists et testés pour l’unicité avec glIsList. Le deuxième paramètre, mode, est une constante symbolique qui peut supposer l’une des deux valeurs précédentes.

Certaines commandes ne sont pas compilées dans la liste d’affichage, mais sont exécutées immédiatement, quel que soit le mode de liste d’affichage. Ces commandes sont glColorPointer, glDeleteLists, glDisableClientState, glEdgeFlagPointer, glEnableClientState, glFeedbackBuffer, glFinish, glFlush, glGenLists, glIndexPointer, glInterleavedArrays, glIsEnabled, glIsList, glNormalPointer, glPopClientAttrib, glPixelStore, glPushClientAttrib, glReadPixels, glRenderMode, glSelectBuffer, glTexCoordPointer, glVertexPointer et toutes les routines glGet .

De même, glTexImage2D et glTexImage1D sont exécutés immédiatement et ne sont pas compilés dans la liste d’affichage lorsque leur premier argument est GL_PROXY_TEXTURE_2D ou GL_PROXY_TEXTURE_1D, respectivement.

Lorsque la fonction glEndList est rencontrée, la définition de liste d’affichage est terminée en associant la liste à la liste de noms unique (spécifiée dans la commande glNewList ). Si une liste d’affichage avec liste de noms existe déjà, elle est remplacée uniquement lorsque glEndList est appelé.

Les fonctions glCallList et glCallLists peuvent être entrées dans des listes d’affichage. Les commandes dans la liste d’affichage ou les listes exécutées par glCallList ou glCallLists ne sont pas incluses dans la liste d’affichage en cours de création, même si le mode de création de liste est GL_COMPILE_AND_EXECUTE.

La fonction suivante récupère les informations relatives à glNewList :

glGet avec argument GL_MATRIX_MODE

Spécifications

Condition requise Valeur
Client minimal pris en charge
Windows 2000 Professionnel [applications de bureau uniquement]
Serveur minimal pris en charge
Windows 2000 Server [applications de bureau uniquement]
En-tête
Gl.h
Bibliothèque
Opengl32.lib
DLL
Opengl32.dll

Voir aussi

glBegin

glCallList

glCallLists

glDeleteLists

glEnd

glEndList

glGenLists

glIsList