glNewList

TriggerTek Logo
abcdefghijklmnopqrstuvwxyz_
GLNEWLIST(3G)							GLNEWLIST(3G)



NAME
       glNewList, glEndList - create or replace a display list


C SPECIFICATION
       void glNewList( GLuint list,
		       GLenum mode )


PARAMETERS
       list  Specifies the display-list name.

       mode  Specifies	the  compilation  mode,	 which	can  be GL_COMPILE or
	     GL_COMPILE_AND_EXECUTE.

C SPECIFICATION
       void glEndList( void )


DESCRIPTION
       Display lists are groups of GL commands that have been stored for sub-
       sequent	execution.   Display  lists  are created with glNewList.  All
       subsequent commands are placed in  the  display	list,  in  the	order
       issued, until glEndList is called.

       glNewList  has two arguments.  The first argument, list, is a positive
       integer that becomes the unique name for the display list.  Names  can
       be created and reserved with glGenLists and tested for uniqueness with
       glIsList.  The second argument, mode, is a symbolic constant that  can
       assume one of two values:

       GL_COMPILE		     Commands are merely compiled.

       GL_COMPILE_AND_EXECUTE	     Commands  are  executed as they are com-
				     piled into the display list.

       Certain commands are not compiled into the display list but  are	 exe-
       cuted  immediately,  regardless	of the display-list mode.  These com-
       mands  are   glAreTexturesResident,   glColorPointer,   glDeleteLists,
       glDeleteTextures,       glDisableClientState,	   glEdgeFlagPointer,
       glEnableClientState, glFeedbackBuffer, glFinish, glFlush,  glGenLists,
       glGenTextures,	glIndexPointer,	  glInterleavedArrays,	 glIsEnabled,
       glIsList,     glIsTexture,     glNormalPointer,	   glPopClientAttrib,
       glPixelStore,	glPushClientAttrib,    glReadPixels,	glRenderMode,
       glSelectBuffer, glTexCoordPointer, glVertexPointer,  and	 all  of  the
       glGet commands.

       Similarly,  glTexImage1D,  glTexImage2D, and glTexImage3D are executed
       immediately and not compiled into the display list  when	 their	first
       argument	    is	   GL_PROXY_TEXTURE_1D,	   GL_PROXY_TEXTURE_1D,	   or
       GL_PROXY_TEXTURE_3D, respectively.

       When the GL_ARB_imaging extension is supported,	glHistogram  executes
       immediately  when  its  argument	 is  GL_PROXY_HISTOGRAM.   Similarly,
       glColorTable  executes  immediately  when  its	first	argument   is
       glPROXY_COLOR_TABLE,	 glPROXY_POST_CONVOLUTION_COLOR_TABLE,	   or
       glPROXY_POST_COLOR_MATRIX_COLOR_TABLE.

       When    the    GL_ARB_multitexture     extension	    is	   supported,
       glClientActiveTextureARB	 is not compiled into display lists, but exe-
       cuted immediately.

       When glEndList is encountered, the  display-list	 definition  is	 com-
       pleted by associating the list with the unique name list (specified in
       the glNewList command).	If a display  list  with  name	list  already
       exists, it is replaced only when glEndList is called.

NOTES
       glCallList  and	glCallLists  can be entered into display lists.	 Com-
       mands  in  the  display	list  or  lists	 executed  by  glCallList  or
       glCallLists  are	 not included in the display list being created, even
       if the list creation mode is GL_COMPILE_AND_EXECUTE.

       A display list is just a group of commands and  arguments,  so  errors
       generated  by  commands	in  a display list must be generated when the
       list is executed. If the list is created in  GL_COMPILE	mode,  errors
       are not generated until the list is executed.

ERRORS
       GL_INVALID_VALUE is generated if list is 0.

       GL_INVALID_ENUM is generated if mode is not an accepted value.

       GL_INVALID_OPERATION  is	 generated  if	glEndList is called without a
       preceding glNewList, or if glNewList is called while a display list is
       being defined.

       GL_INVALID_OPERATION  is	 generated  if glNewList or glEndList is exe-
       cuted between the execution of glBegin and the corresponding execution
       of glEnd.

       GL_OUT_OF_MEMORY	 is generated if there is insufficient memory to com-
       pile the display list. If the GL version is 1.1 or greater, no  change
       is  made	 to the previous contents of the display list, if any, and no
       other change is made to the GL state. (It is as if no attempt had been
       made to create the new display list.)

ASSOCIATED GETS
       glIsList
       glGet with argument GL_LIST_INDEX
       glGet with argument GL_LIST_MODE

SEE ALSO
       glCallList(3G), glCallLists(3G), glDeleteLists(3G), glGenLists(3G)



								GLNEWLIST(3G)