void glPrioritizeTextures( GLsizei n,
const GLuint *textures, const GLclampf *priorities )
Specifies the number of textures to be prioritized.
Specifies an array containing the names of the textures to be prioritized.
Specifies an array containing the texture priorities. A priority given in an element of priorities applies to the texture named by the corresponding element of textures.
glPrioritizeTextures assigns the n texture priorities given in priorities to the n textures named in textures.
The GL establishes a “working set” of textures that are resident in texture memory. These textures may be bound to a texture target much more efficiently than textures that are not resident. By specifying a priority for each texture, glPrioritizeTextures allows applications to guide the GL implementation in determining which textures should be resident.
The priorities given in priorities are clamped to the range [0,1] before they are assigned. 0 indicates the lowest priority; textures with priority 0 are least likely to be resident. 1 indicates the highest priority; textures with priority 1 are most likely to be resident. However, textures are not guaranteed to be resident until they are used.
glPrioritizeTextures silently ignores attempts to prioritize texture 0, or any texture name that does not correspond to an existing texture.
glPrioritizeTextures does not require that any of the textures named by textures be bound to a texture target. glTexParameter may also be used to set a texture's priority, but only if the texture is currently bound. This is the only way to set the priority of a default texture.
glPrioritizeTextures is available only if the GL version is 1.1 or greater.
GL_INVALID_VALUE is generated if n is negative.
GL_INVALID_OPERATION is generated if glPrioritizeTextures is executed between the execution of glBegin and the corresponding execution of glEnd.
glGetTexParameter with parameter name GL_TEXTURE_PRIORITY retrieves the priority of a currently bound texture.
glAreTexturesResident(3G), glBindTexture(3G), glCopyTexImage1D(3G), glCopyTexImage2D(3G), glTexImage1D(3G), glTexImage2D(3G), glTexImage3D(3G), glTexParameter(3G)