glDeleteShader — Deletes a shader object
void glDeleteShader( | GLuint | shader) ; |
glDeleteShader
frees the memory and invalidates the name associated with the shader object specified by shader
. This command effectively undoes the effects of a call to glCreateShader.
If a shader object to be deleted is attached to a program object, it will be flagged for deletion, but it will not be deleted until it is no longer attached to any program object, for any rendering context (i.e., it must be detached from wherever it was attached before it will be deleted). A value of 0 for shader
will be silently ignored.
To determine whether an object has been flagged for deletion, call glGetShader with arguments shader
and GL_DELETE_STATUS
.
GL_INVALID_VALUE
is generated if shader
is not a value generated by OpenGL.
GL_INVALID_OPERATION
is generated if glDeleteShader
is executed between the execution of glBegin and the corresponding execution of glEnd.
glGetAttachedShaders with the program object to be queried
glGetShader with arguments shader
and GL_DELETE_STATUS
Copyright © 2003-2005 3Dlabs Inc. Ltd. 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/.