glGetShaderSource: Unterschied zwischen den Versionen
K (Tippfehler bei glIsShader) |
|||
Zeile 57: | Zeile 57: | ||
[[glGetShader]] mit Token [[glGetShader#GL_SHADER_SOURCE_LENGTH|GL_SHADER_SOURCE_LENGTH]] | [[glGetShader]] mit Token [[glGetShader#GL_SHADER_SOURCE_LENGTH|GL_SHADER_SOURCE_LENGTH]] | ||
− | [[ | + | [[glIsShader]] |
Aktuelle Version vom 3. April 2008, 09:05 Uhr
Inhaltsverzeichnis
glGetShaderSource
Name
glGetShaderSource - Gibt den Sourcecode-String eines Shaderobjekts aus
Delphi-Spezifikation
procedure glGetShaderSource(shader : GLuint; bufSize : GLsizei length : PGLsizei; source : PGLchar)
Parameter
shader | Gibt das Shaderobjekt an, dass abgefragt werden soll. |
---|---|
bufSize | Gibt die Größe des Zeichenpuffers zu Speicherung des Sourcecode-Strings an. |
length | Gibt die Länge des Strings (ausschließlich der Null-Terminierung), der nach source ausgegeben wurde, an. |
source | Gibt ein Zeichen-Array an, in dem der Sourcecode-String abgelegt wird. |
Beschreibung
glGetShaderSource gibt alle Sourcecode-Strings des Shaderobjekts shader auf einmal aus. Die Sourcecode-Strings eines Shaderobjekts sind das Ergebnis eiens vorhergehenden Aufrufs von glShaderSource. Der von der Funktion ausgegene String ist null-terminiert.
glGetShaderSorce gibt nach Source so viel wie möglich vom Sourcecode-String aus, bis maximal bufSize Zeichen. Die Anzahl der wirklich ausgegebenen Zeichen wird ausschließlich der Null-Terminierung durch length angegeben. Wenn die Länge des ausgegebenen Strings unerheblich ist, kann man im length-Argument nil angeben. Die Größe des Puffers, der benötigt wird, den ausgebenen Sourcecode-String zu speichern, kann durch einen Aufruf von glGetShader mit dem Argument GL_SHADER_SOURCE_LENGTH bestimmt werden.
Hinweise
glGetShaderSource ist nur verfügbar, wenn die verwendete OpenGL-Version größer gleich 2.0 ist.
Fehlermeldungen
GL_INVALID_VALUE wird generiert, wenn shader kein von OpenGL erzeugter Wert ist.
GL_INVALID_OPERATION wird generiert, wenn shader kein Shaderobjekt ist.
GL_INVALID_VALUE wird generiert, wenn bufSize kleiner 0 ist.
GL_INVALID_OPERATION wird generiert wenn glGetShaderSource innerhalb eines glBegin-glEnd Blocks aufgerufen wird.
Zugehörige Wertrückgaben
glGetShader mit Token GL_SHADER_SOURCE_LENGTH