glInvalidateFramebuffer — Invalidate the contents of attachments within a framebuffer
void glInvalidateFramebuffer(
|
GLenum target, |
GLsizei numAttachments, | |
const GLenum *attachments) ; |
target
Specifies the target of the invalidate operation.
numAttachments
Specifies how many attachments are supplied in the attachments
list.
attachments
A list of numAttachments
attachments to invalidate.
glInvalidateFramebuffer
signals to the GL
that it need not preserve all pixels of the framebuffer bound to target
.
target
must be GL_READ_FRAMEBFUFFER
,
GL_DRAW_FRAMEBUFFER
or GL_FRAMEBUFFER
. The
token GL_FRAMEBUFFER
is treated as GL_DRAW_FRAMEBUFFER
.
attachments
contains a list of
numAttachments
to be invalidated. If an
attachment is specified that does not exist in the bound
framebuffer, it is ignored.
If a framebuffer object is bound, then
attachments
may contain
GL_COLOR_ATTACHMENTi
,
GL_DEPTH_ATTACHMENT
,
GL_STENCIL_ATTACHMENT
, and/or
GL_DEPTH_STENCIL_ATTACHMENT
. If the
framebuffer object is not complete,
glInvalidateFramebuffer
may be ignored.
If the default framebuffer is bound, then
attachments
may contain
GL_COLOR
, identifying the color buffer;
GL_DEPTH
, identifying the depth buffer;
and/or GL_STENCIL
, identifying the stencil
buffer.
The intention of this function is to provide a hint to the GL implementation that there is no longer a need to preserve the contents of particular attachments of a framebuffer object, or the default framebuffer. It is possible, for example, to signal the intention that depth and or stencil data is no longer needed at the end of a scene, or that multisample color buffer data is no longer needed after a resolve through glBlitFramebuffer.
GL_INVALID_ENUM
is generated if target
is not GL_DRAW_FRAMEBUFFER
,
GL_READ_FRAMEBUFFER
, or GL_FRAMEBUFFER
.
GL_INVALID_OPERATION
is generated if
attachments
contains
GL_COLOR_ATTACHMENTm
and m is greater than
or equal to the value of
GL_MAX_COLOR_ATTACHMENTS
.
OpenGL ES API Version | ||||
---|---|---|---|---|
Function Name | 2.0 | 3.0 | 3.1 | 3.2 |
glInvalidateFramebuffer | - | ✔ | ✔ | ✔ |
glBindFramebuffer, glBlitFramebuffer glFramebufferRenderbuffer, glFramebufferTexture2D, glFramebufferTextureLayer, glInvalidateSubFramebuffer
Copyright © 2014-2015 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. https://opencontent.org/openpub/.