glDetachShader — Detaches a shader object from a program object to which it is attached
void glDetachShader( | GLuint | program, |
GLuint | shader) ; |
program
Specifies the program object from which to detach the shader object.
shader
Specifies the shader object to be detached.
glDetachShader
detaches the shader object specified by shader
from the program object specified by program
. This command can be used to undo the effect of the command glAttachShader.
If shader
has already been flagged for deletion by a call to glDeleteShader and it is not attached to any other program object, it will be deleted after it has been detached.
GL_INVALID_VALUE
is generated if either program
or shader
is a value that was not generated by OpenGL.
GL_INVALID_OPERATION
is generated if program
is not a program object.
GL_INVALID_OPERATION
is generated if shader
is not a shader object.
GL_INVALID_OPERATION
is generated if shader
is not attached to program
.
GL_INVALID_OPERATION
is generated if glDetachShader
is executed between the execution of glBegin and the corresponding execution of glEnd.
glGetAttachedShaders with the handle of a valid program object
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/.