Light | Dark

# docs.GL

OpenGL 3
OpenGL 2

# glCallList

## Name

glCallList — execute a display list

## C Specification

`void glCallList(` | GLuint | list`)`;

## Parameters

`list`

  Specifies the integer name of the display list to be executed.

## Description

`glCallList` causes the named display list to be executed. The commands saved in the display list are executed in order, just as if they were called without using a display list. If `list` has not been defined as a display list, `glCallList` is ignored.

`glCallList` can appear inside a display list. To avoid the possibility of infinite recursion resulting from display lists calling one another, a limit is placed on the nesting level of display lists during display-list execution. This limit is at least 64, and it depends on the implementation.

GL state is not saved and restored across a call to `glCallList`. Thus, changes made to GL state during the execution of a display list remain after execution of the display list is completed. Use glPushAttrib, glPopAttrib, glPushMatrix, and glPopMatrix to preserve GL state across `glCallList` calls.

## Notes

Display lists can be executed between a call to glBegin and the corresponding call to glEnd, as long as the display list includes only commands that are allowed in this interval.

## Associated Gets

glGet with argument `GL_MAX_LIST_NESTING`

glIsList

## Tutorials

## See Also

`glCallLists`, glDeleteLists, glGenLists, glNewList, glPushAttrib, glPushMatrix

## Copyright

Copyright © 1991-2006 Silicon Graphics, Inc. This document is licensed under the SGI Free Software B License. For details, see https://web.archive.org/web/20171022161616/http://oss.sgi.com/projects/FreeB/.

Think you can improve this page? Edit this page on GitHub.