2013
Khronos Group
glInvalidateTexSubImage
3G

# glInvalidateTexSubImage

invalidate a region of a texture image

## C Specification

                    void glInvalidateTexSubImage
                    GLuint texture
                    GLint level
                    GLint xoffset
                    GLint yoffset
                    GLint zoffset
                    GLsizei width
                    GLsizei height
                    GLsizei depth

## Parameters

`texture`

  The name of a texture object a subregion of which to invalidate.

`level`

  The level of detail of the texture object within which the region resides.

`xoffset`

  The X offset of the region to be invalidated.

`yoffset`

  The Y offset of the region to be invalidated.

`zoffset`

  The Z offset of the region to be invalidated.

`width`

  The width of the region to be invalidated.

`height`

  The height of the region to be invalidated.

`depth`

  The depth of the region to be invalidated.

## Description

`glInvalidateTexSubImage` invalidates all or part of a texture image. `texture` and `level` indicated which texture image is being invalidated. After this command, data in that subregion have undefined values. `xoffset`, `yoffset`, `zoffset`, `width`, `height`, and `depth` are interpreted as they are in glTexSubImage3D. For texture targets that don't have certain dimensions, this command treats those dimensions as having a size of 1. For example, to invalidate a portion of a two- dimensional texture, the application would use `zoffset` equal to zero and `depth` equal to one. Cube map textures are treated as an array of six slices in the z-dimension, where a value of `zoffset` is interpreted as specifying face `GL_TEXTURE_CUBE_MAP_POSITIVE_X` + `zoffset`.

`level` must be greater than or equal to zero and be less than the base 2 logarithm of the maximum texture width, height, or depth. `xoffset`, `yoffset` and `zoffset` must be greater than or equal to zero and be less than the width, height or depth of the image, respectively. Furthermore, `xoffset` + `width`, `yoffset` + `height`, and `zoffset` + `depth` must be less than or equal to the width, height or depth of the image, respectively.

For textures of targets `GL_TEXTURE_RECTANGLE`, `GL_TEXTURE_BUFFER`, `GL_TEXTURE_2D_MULTISAMPLE`, or `GL_TEXTURE_2D_MULTISAMPLE_ARRAY`, level must be zero.

## Errors

`GL_INVALID_VALUE` is generated if `xoffset`, `yoffset` or `zoffset` is less than zero, or if any of them is greater than the size of the image in the corresponding dimension.

`GL_INVALID_VALUE` is generated if `level` is less than zero or if it is greater or equal to the base 2 logarithm of the maximum texture width, height, or depth.

`GL_INVALID_VALUE` is generated if the target of `texture` is any of `GL_TEXTURE_RECTANGLE`, `GL_TEXTURE_BUFFER`, `GL_TEXTURE_2D_MULTISAMPLE`, or `GL_TEXTURE_2D_MULTISAMPLE_ARRAY` and `level` is not zero.

`GL_INVALID_VALUE` is generated if `texture` is not the name of an existing texture object.

## Associated Gets

glGet with argument `GL_MAX_TEXTURE_SIZE`

## See Also

glInvalidateTexImage,, glInvalidateBufferSubData, glInvalidateBufferData, glInvalidateFramebuffer, glInvalidateSubFramebuffer.

## Copyright

Copyright 2013 Khronos Group. This material may be distributed subject to the terms and conditions set forth in the Open Publication License, v 1.0, 8 June 1999. http://opencontent.org/openpub/.