Função glNewList
As funções glNewList e glEndList criam ou substituem uma lista de exibição.
void WINAPI glNewList(
GLuint list,
GLenum mode
);
-
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.
Essa função não retorna um valor.
Os códigos de erro a seguir podem ser recuperados pela função glGetError .
Nome | Significado |
---|---|
|
lista era zero. |
|
mode não era um valor aceito. |
|
A função foi chamada entre uma chamada para glBegin e a chamada correspondente para glEnd. |
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
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 |
|
Biblioteca |
|
DLL |
|