Compartir a través de


Función glCallLists

La función glCallLists ejecuta una lista de listas para mostrar.

Sintaxis

void WINAPI glCallLists(
         GLsizei n,
         GLenum  type,
   const GLvoid  *lists
);

Parámetros

n

Número de listas para mostrar que se van a ejecutar.

type

Tipo de valores en listas. Se aceptan las siguientes constantes simbólicas.

Valor Significado
GL_BYTE
El parámetro lists se trata como una matriz de bytes firmados, cada uno del intervalo -128 al 127.
GL_UNSIGNED_BYTE
El parámetro lists se trata como una matriz de bytes sin signo, cada uno del intervalo comprendido entre 0 y 255.
GL_SHORT
El parámetro lists se trata como una matriz de enteros de 2 bytes con signo, cada uno del intervalo -32768 al 32767.
GL_UNSIGNED_SHORT
El parámetro lists se trata como una matriz de enteros de 2 bytes sin signo, cada uno del intervalo comprendido entre 0 y 65535.
GL_INT
El parámetro lists se trata como una matriz de enteros de 4 bytes con signo.
GL_UNSIGNED_INT
El parámetro lists se trata como una matriz de enteros de 4 bytes sin signo.
GL_FLOAT
El parámetro lists se trata como una matriz de valores de punto flotante de 4 bytes.
GL_2_BYTES
El parámetro lists se trata como una matriz de bytes sin signo. Cada par de bytes especifica un único nombre de lista para mostrar. El valor del par se calcula como 256 veces el valor sin signo del primer byte más el valor sin signo del segundo byte.
GL_3_BYTES
El parámetro lists se trata como una matriz de bytes sin signo. Cada tripleto de bytes especifica un único nombre de lista para mostrar. El valor del triplet se calcula como 65536 veces el valor sin signo del primer byte, más 256 veces el valor sin signo del segundo byte, más el valor sin signo del tercer byte.
GL_4_BYTES
El parámetro lists se trata como una matriz de bytes sin signo. Cada cuadrúruplo de bytes especifica un único nombre de lista para mostrar. El valor del quadruplet se calcula como 16777216 veces el valor sin signo del primer byte, más 65536 veces el valor sin signo del segundo byte, más 256 veces el valor sin signo del tercer byte, además del valor sin signo del cuarto byte.

Listas

Dirección de una matriz de desplazamientos de nombre en la lista para mostrar. El tipo de puntero es void porque los desplazamientos pueden ser bytes, shorts, ints o floats, dependiendo del valor de tipo.

Valor devuelto

Esta función no devuelve ningún valor.

Observaciones

La función glCallLists hace que cada lista para mostrar de la lista de nombres pasados como listas se ejecute. Como resultado, las funciones guardadas en cada lista de visualización se ejecutan en orden, como si se llamaran sin usar una lista para mostrar. Los nombres de las listas para mostrar que no se han definido se omiten.

La función glCallLists proporciona un medio eficaz para ejecutar listas de visualización. El parámetro n especifica el número de listas con varios formatos de nombre (especificados por el parámetro de tipo ) glCallLists ejecutados .

La lista de nombres de lista para mostrar no está terminada en null. En su lugar, n especifica cuántos nombres se van a tomar de las listas.

La función glListBase hace que esté disponible un nivel adicional de direccionamiento indirecto. La función glListBase especifica un desplazamiento sin signo que se agrega a cada nombre de lista para mostrar especificado en listas antes de que se ejecute esa lista para mostrar.

La función glCallLists puede aparecer dentro de una lista para mostrar. Para evitar la posibilidad de recursividad infinita resultante de listas de visualización que se llaman entre sí, se coloca un límite en el nivel de anidamiento de las listas de visualización durante la ejecución de la lista de visualización. Este límite debe ser de al menos 64 y depende de la implementación.

El estado de OpenGL no se guarda y restaura en una llamada a glCallLists. Por lo tanto, los cambios realizados en el estado OpenGL durante la ejecución de las listas de visualización permanecen una vez completada la ejecución. Use glPushAttrib, glPopAttrib, glPushMatrix y glPopMatrix para conservar el estado de OpenGL en las llamadas glCallLists .

Puede ejecutar listas para mostrar entre una llamada a glBegin y la llamada correspondiente a glEnd, siempre y cuando la lista de visualización incluya solo las funciones permitidas en este intervalo.

Las siguientes funciones recuperan información relacionada con la función glCallLists :

glGet con GL_LIST_BASE de argumentos

glGet con GL_MAX_LIST_NESTING de argumentos

glIsList

Requisitos

Requisito Value
Cliente mínimo compatible
Windows 2000 Professional [solo aplicaciones de escritorio]
Servidor mínimo compatible
Windows 2000 Server [solo aplicaciones de escritorio]
Encabezado
Gl.h
Biblioteca
Opengl32.lib
Archivo DLL
Opengl32.dll

Vea también

glBegin

glCallList

glDeleteLists

glEnd

glGenLists

glGet

glIsList

glListBase

glNewList

glPopAttrib

glPopMatrix

glPushAttrib

glPushMatrix