Difference between revisions of "GLAPI/glDeleteShader"

From OpenGL Wiki
Jump to navigation Jump to search
m (Bot: Adding better formatting.)
m (Bot: Adding better formatting.)
 
(One intermediate revision by the same user not shown)
Line 19: Line 19:
 
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 {{param|shader}} will be silently ignored.
 
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 {{param|shader}} will be silently ignored.
  
To determine whether an object has been flagged for deletion, call {{apifunc|glGetShader}} with arguments {{param|shader}} and {{code|GL_DELETE_STATUS}}.
+
To determine whether an object has been flagged for deletion, call {{apifunc|glGetShader}} with arguments {{param|shader}} and {{enum|GL_DELETE_STATUS}}.
  
 
== Errors ==
 
== Errors ==
  
{{code|GL_INVALID_VALUE}} is generated if {{param|shader}} is not a value generated by OpenGL.
+
{{enum|GL_INVALID_VALUE}} is generated if {{param|shader}} is not a value generated by OpenGL.
  
 
== Associated Gets ==
 
== Associated Gets ==
Line 29: Line 29:
 
{{apifunc|glGetAttachedShaders}} with the program object to be queried
 
{{apifunc|glGetAttachedShaders}} with the program object to be queried
  
{{apifunc|glGetShader}} with arguments {{param|shader}} and {{code|GL_DELETE_STATUS}}
+
{{apifunc|glGetShader}} with arguments {{param|shader}} and {{enum|GL_DELETE_STATUS}}
  
 
{{apifunc|glIsShader}}
 
{{apifunc|glIsShader}}
Line 35: Line 35:
 
== See Also ==
 
== See Also ==
  
{{apifunc|glCreateProgram}}, {{apifunc|glCreateShader}}, {{apifunc|glDetachShader}}, {{apifunc|glUseProgram}}
+
{{apifunc|glAttachShader}}, {{apifunc|glCreateShader}}, {{apifunc|glDetachShader}}, {{apifunc|glIsShader}}
  
 
== Copyright ==
 
== Copyright ==

Latest revision as of 19:33, 27 September 2012

glDeleteShader
Core in version 4.6
Core since version 2.0

glDeleteShader: Deletes a shader object

Function Definition

 void glDeleteShader(GLuint shader​);
shader
Specifies the shader object to be deleted.

Description

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.

Errors

GL_INVALID_VALUE is generated if shader​ is not a value generated by OpenGL.

Associated Gets

glGetAttachedShaders with the program object to be queried

glGetShader with arguments shader​ and GL_DELETE_STATUS

glIsShader

See Also

glAttachShader, glCreateShader, glDetachShader, glIsShader

Copyright

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. http://opencontent.org/openpub/.