glDetachShader: Unterschied zwischen den Versionen
DGLBot (Diskussion | Beiträge) K (Bot: konvertiere/korrigiere <BR>) |
K (Kategorisierung unter GL2.0; kleinere Rechtschreibfehler korrigiert.) |
||
Zeile 11: | Zeile 11: | ||
procedure '''glDetachShader'''(''program'', ''shader'' : GLuint); | procedure '''glDetachShader'''(''program'', ''shader'' : GLuint); | ||
procedure '''glDetachObjectARB'''(''container'', ''attached'' : GLHandleARB); | procedure '''glDetachObjectARB'''(''container'', ''attached'' : GLHandleARB); | ||
− | |||
Zeile 22: | Zeile 21: | ||
|- | |- | ||
! ''shader'' | ! ''shader'' | ||
− | | Der [[OpenGL Name]] des Shaderobjekts das entfernt werden soll. | + | | Der [[OpenGL Name]] des Shaderobjekts, das entfernt werden soll. |
|- | |- | ||
|} | |} | ||
Zeile 28: | Zeile 27: | ||
+ | == Beschreibung == | ||
+ | '''glDetachShader''' entfernt das Shaderobjekt, welches über ''shader'' bestimmt wurde, 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 == | == Hinweise == | ||
'''glDetachShader''' ist erst ab OpenGL Version 2.0 verfügbar. | '''glDetachShader''' ist erst ab OpenGL Version 2.0 verfügbar. | ||
+ | |||
== Fehlermeldungen == | == Fehlermeldungen == | ||
− | '''GL_INVALID_VALUE''' wird generiert wenn ''program'' oder ''shader'' keinen von OpenGL erzeugten Wert enthalten | + | '''GL_INVALID_VALUE''' wird generiert, wenn ''program'' oder ''shader'' keinen von OpenGL erzeugten Wert enthalten. |
− | |||
− | |||
− | '''GL_INVALID_OPERATION''' wird generiert wenn '' | + | '''GL_INVALID_OPERATION''' wird generiert, wenn ''program'' kein Programmobjekt ist. |
− | '''GL_INVALID_OPERATION''' wird generiert wenn ''shader'' | + | '''GL_INVALID_OPERATION''' wird generiert, wenn ''shader'' kein Shaderobjekt ist. |
− | '''GL_INVALID_OPERATION''' wird generiert wenn ''' | + | '''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. | ||
Zeile 56: | Zeile 55: | ||
[[glGetAttachedShaders]] mit einem gültigen Programmobjekt. | [[glGetAttachedShaders]] mit einem gültigen Programmobjekt. | ||
− | [[glGetShader]] mit dem Parametern ''shader'' und dem | + | [[glGetShader]] mit dem Parametern ''shader'' und dem Token [[glGetShader#GL_DELETE_STATUS|GL_DELETE_STATUS]]. |
[[glIsProgram]] | [[glIsProgram]] | ||
[[glIsShader]] | [[glIsShader]] | ||
− | |||
Zeile 69: | Zeile 67: | ||
[[Kategorie:GL|DetachShader]] | [[Kategorie:GL|DetachShader]] | ||
+ | [[Kategorie:GL2.0|DetachShader]] | ||
[[Kategorie:SHADER_OBJECTS|DetachShader]] | [[Kategorie:SHADER_OBJECTS|DetachShader]] |
Version vom 3. Juni 2008, 18:23 Uhr
Inhaltsverzeichnis
glDetachShader (glDetachObjectARB)
Name
glDetachShader - Löst ein Shaderobjekt von dem Programmobjekt, an das es angehängt ist.
Delphi-Spezifikation
procedure glDetachShader(program, shader : GLuint); procedure glDetachObjectARB(container, attached : GLHandleARB);
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 wurde, 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 Token GL_DELETE_STATUS.