glDetachShader: Unterschied zwischen den Versionen

Aus DGL Wiki
Wechseln zu: Navigation, Suche
(Neuer Artikel)
 
Zeile 3: Zeile 3:
 
<br>
 
<br>
 
== Name ==
 
== Name ==
'''glDetachShader''' - Prüft ob ein [[OpenGL Name]] zu einem Shaderobjekt gehört.
+
'''glDetachShader''' - Löst ein Shaderobjekt von dem Programmobjekt, an das es angehängt ist.
  
 
<br>
 
<br>

Version vom 19. November 2005, 19:38 Uhr

glDetachShader


Name

glDetachShader - Löst ein Shaderobjekt von dem Programmobjekt, an das es angehängt ist.


Delphi-Spezifikation

procedure glDetachShader(program : GLuint; shader : GLuint);



Parameter

program Legt das Programmobjekt fest von dem das Shaderobjekt entfernt/gelöst (engl. detached) werden soll.
shader Der OpenGL Name des Shaderobjekts das entfernt werden soll.


Beschreibung

glDetachShader entfernt das Shaderobjekt welches über shader bestimmt wurd vom Programmobjekt welches durch program spezifiziert wurde. Dieser Befehl kann benutzt werden um den Effekt von glAttachShader rückgängig zu machen.

Falls shader bereits markiert wurde um freigegeben zu werden (durch einen Aufruf von glDeleteShader) und an keinem anderen Programmobjekt gebunden ist, wird shader direkt nachdem es von program gelöst wurde zerstört.


Hinweise

glDetachShader ist erst ab OpenGL Version 2.0 verfügbar.


Fehlermeldungen

GL_INVALID_VALUE wird generiert wenn program oder shader keinen von OpenGL erzeugten Wert enthalten.

GL_INVALID_OPERATION wird generiert wenn program kein Programmobjekt ist.

GL_INVALID_OPERATION wird generiert wenn shader kein Shaderobjekt ist.

GL_INVALID_OPERATION wird generiert wenn shader nicht an program gebunden ist.

GL_INVALID_OPERATION wird generiert wenn glDetachShader innerhalb eines glBegin-glEnd Blocks aufgerufen wird.


Zugehörige Wertrückgaben

glGetAttachedShaders mit einem gültigen Programmobjekt.

glGetShader mit dem Parametern shader und dem Tooken GL_DELETE_STATUS.

glIsProgram

glIsShader


Siehe auch

glAttachShader