Função glNewList

As funções glNewList e glEndList criam ou substituem uma lista de exibição.

Sintaxe

void WINAPI glNewList(
   GLuint list,
   GLenum mode
);

Parâmetros

list

O nome da lista de exibição.

mode

O modo de compilação. Os valores a seguir são aceitos.

Valor Significado
GL_COMPILE
Os comandos são meramente compilados.
GL_COMPILE_AND_EXECUTE
Os comandos são executados conforme são compilados na lista de exibição.

Retornar valor

Essa função não retorna um valor.

Códigos de erro

Os códigos de erro a seguir podem ser recuperados pela função glGetError .

Nome Significado
GL_INVALID_VALUE
lista era zero.
GL_INVALID_ENUM
mode não era um valor aceito.
GL_INVALID_OPERATION
A função foi chamada entre uma chamada para glBegin e a chamada correspondente para glEnd.

Comentários

Listas de exibição são grupos de comandos OpenGL que foram armazenados para execução subsequente. As listas de exibição são criadas com glNewList. Todos os comandos subsequentes são colocados na lista de exibição, na ordem emitida, até que glEndList seja chamado.

A função glNewList tem dois parâmetros. O primeiro parâmetro, list, é um inteiro positivo que se torna o nome exclusivo da lista de exibição. Os nomes podem ser criados e reservados com glGenLists e testados para exclusividade com glIsList. O segundo parâmetro, mode, é uma constante simbólica que pode assumir um dos dois valores anteriores.

Determinados comandos não são compilados na lista de exibição, mas são executados imediatamente, independentemente do modo de lista de exibição. Esses comandos são glColorPointer, glDeleteLists, glDisableClientState, glEdgeFlagPointer, glEnableClientState, glFeedbackBuffer, glFinish, glFlush, glGenLists, glIndexPointer, glInterleavedArrays, glIsEnabled, glIsList, glNormalPointer, glPopClientAttrib, glPixelStore, glPushClientAttrib, glReadPixels, glRenderMode, glSelectBuffer, glTexCoordPointer, glVertexPointer e todas as rotinas glGet .

Da mesma forma, glTexImage2D e glTexImage1D são executados imediatamente e não são compilados na lista de exibição quando seu primeiro argumento é GL_PROXY_TEXTURE_2D ou GL_PROXY_TEXTURE_1D, respectivamente.

Quando a função glEndList é encontrada, a definição da lista de exibição é concluída associando a lista à lista de nomes exclusiva (especificada no comando glNewList ). Se uma lista de exibição com lista de nomes já existir, ela será substituída somente quando glEndList for chamado.

As funções glCallList e glCallLists podem ser inseridas em listas de exibição. Os comandos na lista de exibição ou listas executadas por glCallList ou glCallLists não estão incluídos na lista de exibição que está sendo criada, mesmo que o modo de criação da lista seja GL_COMPILE_AND_EXECUTE.

A função a seguir recupera informações relacionadas ao glNewList:

glGet com GL_MATRIX_MODE de argumento

Requisitos

Requisito Valor
Cliente mínimo com suporte
Windows 2000 Professional [somente aplicativos da área de trabalho]
Servidor mínimo com suporte
Windows 2000 Server [somente aplicativos da área de trabalho]
Cabeçalho
Gl.h
Biblioteca
Opengl32.lib
DLL
Opengl32.dll

Confira também

glBegin

glCallList

glCallLists

glDeleteLists

glEnd

glEndList

glGenLists

glIsList