---
name: "glPrioritizeTextures"
section: "3x"
platform: "linux"
package: "xlibmesa-gl-dev"
version: "4.3.0.dfsg.1-14sarge7"
release: "Debian 3.1 (Sarge)"
platforms: ["linux"]
url: "https://new.carta.tech/glPrioritizeTextures"
---

# glPrioritizeTextures(3x)

set texture residence priority

## NAME

**glPrioritizeTextures** - set texture residence priority

## C SPECIFICATION

void **glPrioritizeTextures**( GLsizei *n*,

```
	const GLuint *textures,
	const GLclampf *priorities )
```

## PARAMETERS

- *n*

  Specifies the number of textures to be prioritized.

- *textures*

  Specifies an array containing the names of the textures to be prioritized.

- *priorities*

  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*.

## DESCRIPTION

**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.

## NOTES

**glPrioritizeTextures** is available only if the GL version is 1.1 or greater.

## ERRORS

**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**.

## ASSOCIATED GETS

**glGetTexParameter** with parameter name **GL\_TEXTURE\_PRIORITY** retrieves the priority of a currently bound texture.

## SEE ALSO

**glAreTexturesResident(3G)**, **glBindTexture(3G)**, **glCopyTexImage1D(3G)**, **glCopyTexImage2D(3G)**, **glTexImage1D(3G)**, **glTexImage2D(3G)**, **glTexImage3D(3G)**, **glTexParameter(3G)**
