glAreTexturesResident 函数

glAreTexturesResident 函数确定指定的纹理对象是否驻留在纹理内存中。

语法

GLboolean WINAPI glAreTexturesResident(
         GLsizei   n,
   const GLuint    *textures,
         GLboolean *residences
);

参数

n

要查询的纹理数。

纹理

数组的地址,该数组包含要查询的纹理的名称。

住宅

在其中返回纹理居住状态的数组的地址。 由纹理元素命名的 纹理 的居住状态在相应的 住宅元素中返回。

错误代码

glGetError 函数可以检索以下错误代码。

名称 含义
GL_INVALID_VALUE
n 为负值, 纹理 中的元素为零,或者 纹理 中的元素不包含纹理标识符。
GL_INVALID_OPERATION
函数是在 对 glBegin 的调用和对 glEnd 的相应调用之间调用的。

备注

在纹理内存量有限的计算机上,OpenGL 会建立一组驻留在纹理内存中的工作纹理。 与非驻留纹理相比,这些纹理可以更有效地绑定到纹理目标。

glAreTexturesResident 函数查询由纹理元素命名的 n纹理的纹理居住状态。 如果所有命名纹理都是驻留的, 则 glAreTexturesResident 将返回GL_TRUE,并且 住宅 的内容不受干扰。 如果任何命名纹理不是驻留纹理,则 glAreTexturesResident 将返回GL_FALSE,并在住宅n 个元素中返回详细状态。

如果 住宅元素GL_TRUE ,则由相应纹理元素命名的 纹理 驻留在纹理内存中。

若要查询单个绑定纹理的居住状态,请调用 glGetTexParameter并将目标 参数设置为目标绑定到的目标纹理,并将 pname 参数设置为GL_TEXTURE_RESIDENT。 必须使用此方法查询默认纹理的驻留状态。

不能在显示列表中包括 glAreTexturesResident

glAreTexturesResident 函数返回调用时纹理的驻留状态。 它不保证纹理在任何其他时间都保持驻留状态。

如果纹理驻留在虚拟内存中 (没有纹理内存) ,则它们被视为始终驻留。

注意

glAreTexturesResident 函数仅在 OpenGL 版本 1.1 或更高版本中可用。

要求

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

Opengl32.lib
DLL
Opengl32.dll

另请参阅

glBegin

glBindTexture

glEnd

glGetTexParameter

glPrioritizeTextures

glTexImage1D

glTexImage2D