glDeleteProgram: Unterschied zwischen den Versionen
K (Kategorisierung unter GL2.0) |
K (Kategorie GL3 hinzugefügt) |
||
Zeile 58: | Zeile 58: | ||
[[Kategorie:GL2.0|DeleteProgram]] | [[Kategorie:GL2.0|DeleteProgram]] | ||
[[Kategorie:SHADER_OBJECTS]] | [[Kategorie:SHADER_OBJECTS]] | ||
+ | [[Kategorie:GL3]] |
Version vom 15. Juni 2011, 21:06 Uhr
Inhaltsverzeichnis
glDeleteProgram
Name
glDeleteProgram - Gibt ein Programmobjekt frei.
Delphi-Spezifikation
procedure glDeleteProgram(program : GLuint);
Parameter
program | Name des Programmobjekts welches freigegeben werden soll. |
---|
Beschreibung
glDeleteProgram gibt den Speicher des Programmobjekts, welches durch program' benannt wurde, frei und kennzeichnet diesen Namen als nicht mehr gültig. Im Grunde genommen macht dieser Befehl damit den Effekt eines glCreateProgram-Aufrufs wieder rückgängig.
Wenn ein Objekt als Teil des aktuellen Renderstatus benutzt wird, wird es markiert und erst dann freigegeben wenn es nicht mehr zum aktuellen Renderstatus auf allen Renderkontexten gehört. Wenn einem freizugebenden Objekt Shader-Objekte angehängt wurden, werden diese Objekte abgekoppelt aber nicht freigegeben außer Sie wurden durch vorangehende Aufrufe von glDeleteShader als freizugeben markiert.
Falls program ein Wert von 0 übergeben wurde, wird dies schweigend ignoriert.
Um zu bestimmen ob das Objekt zum Freigeben gekennzeichnet wurde, rufen Sie glGetProgram mit den Argumenten program und GL_DELETE_STATUS auf.
Hinweise
glDeleteProgram ist erst ab OpenGL Version 2.0 oder größer verfügbar.
Fehlermeldungen
GL_INVALID_VALUE wird generiert, wenn program kein von OpenGL generierter Wert ist.
GL_INVALID_OPERATION wird generiert, wenn glDeleteProgram innerhalb eines glBegin-glEnd Blocks aufgerufen wird.
Zugehörige Wertrückgaben
glGet mit dem Argument GL_CURRENT_PROGRAM
glGetProgram mit den Argumenten program und GL_DELETE_STATUS
Siehe auch
glCreateProgram, glCreateShader, glDetachShader, glUseProgram