glCallLists 函数

GlCallLists 函数执行显示列表的列表。

语法

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

参数

n

要执行的显示列表数。

type

列表 中值的类型。 接受以下符号常量。

含义
总帐 _ 字节
" 列表 " 参数被视为带符号字节的数组,每个字节的范围为-128 到127。
总帐 _ 无符号 _ 字节
Lists 参数被视为无符号字节数组,每个字节的范围介于0到255之间。
GL _ SHORT
Lists 参数被视为带符号2字节整数的数组,每个整数的范围为-32768 到32767。
总帐 _ 无符号 _ 简短
Lists 参数被视为无符号2字节整数的数组,每个整数的范围介于0到65535之间。
总帐 _ INT
Lists 参数被视为带符号4字节整数的数组。
总帐 _ 无符号 _ INT
Lists 参数被视为无符号4字节整数的数组。
总帐 _ 浮点
Lists 参数被视为4字节浮点值的数组。
GL _ 2 _ 字节
Lists 参数被视为无符号字节数组。 每对字节指定单个显示列表名称。 对的值的计算方式为256倍第一个字节的无符号值加上第二个字节的无符号值。
GL _ 3 _ 字节
Lists 参数被视为无符号字节数组。 每个三个字节指定单个显示列表名称。 三元计算的值的计算方式为第一个字节的无符号值65536倍,再加256上第二个字节的无符号值和第三个字节的无符号值。
GL _ 4 _ 字节
Lists 参数被视为无符号字节数组。 每个字节 quadruplet 指定一个显示列表名称。 将 quadruplet 的值计算为第一个字节的无符号值的16777216倍,再加上第二个字节的无符号值的65536倍,256再加上第三个字节的无符号值以及第四个字节的无符号值。

显示列表中名称偏移数组的地址。 指针类型为 void,因为偏移量可以是 bytes、短路、整数或浮点数,具体取决于 类型 的值。

返回值

此函数不返回值。

备注

GlCallLists 函数会使作为 列表 传递的名称列表中的每个显示列表都被执行。 因此,每个显示列表中保存的函数按顺序执行,就像在不使用显示列表的情况下调用一样。 将忽略尚未定义的显示列表的名称。

GlCallLists 函数提供了一种有效的方式来执行显示列表。 N 参数使用) glCallLists 执行的 类型 参数指定 (指定不同名称格式的列表数。

显示列表名称的列表不是以 null 结尾的。 相反, n 指定将从 列表 中提取的名称数。

GlListBase函数可提供额外的间接寻址级别。 GlListBase 函数指定一个无符号偏移量,该偏移量将添加到在执行该显示列表之前在 列表 中指定的每个显示列表名称。

GlCallLists 函数可以出现在显示列表中。 为了避免由于显示列表相互调用而导致的无限递归,在显示列表执行过程中,将限制放置在显示列表的嵌套级别。 此限制必须至少为64,并且取决于实现。

OpenGL 状态不会在对 glCallLists 的调用中保存和还原。 因此,在执行完成后,在显示列表执行过程中对 OpenGL 状态所做的更改将保持不变。 使用 glPushAttribglPopAttribglPushMatrixglPopMatrixglCallLists 调用保留 OpenGL 状态。

可以在对 glBegin 的调用和对 glEnd的相应调用之间执行显示列表,前提是该显示列表仅包含在此时间间隔内允许的函数。

以下函数检索与 glCallLists 函数相关的信息:

glGet 参数总帐 _ 列表 _ 基础

带参数的 glGet _ 最大 _ 列表 _ 嵌套

glIsList

要求

要求
最低受支持的客户端
Windows 2000 Professional [仅限桌面应用]
最低受支持的服务器
Windows 2000 Server [仅限桌面应用]
标头
Gl。h

Opengl32
DLL
Opengl32.dll

请参阅

glBegin

glCallList

glDeleteLists

glEnd

glGenLists

glGet

glIsList

glListBase

glNewList

glPopAttrib

glPopMatrix

glPushAttrib

glPushMatrix