glGetAttribLocation
Inhaltsverzeichnis
glGetAttribLocation
Name
glGetAttribLocation - Liefert die Position einer Attributvariable.
Delphi-Spezifikation
function glGetAttribLocation(program : GLuint; const name : PGLchar) : GLint
Parameter
program | Gibt das Programmobjekt an, das abgefragt werden soll. |
---|---|
name | Zeigt auf einen null-terminierten String, der den Namen der Attribut-Variable enthält, die abgefragt werden soll. |
Beschreibung
glGetAttribLocation fragt vom zuvor gelinkten Programmobjekt - spezifiziert durch program - die Attributvariable name ab und liefert den Index des generischen Vertexattributs, dass an diese Attributvariable gebunden ist. Wenn name eine Matrizen-Attributvariable ist, wird der Index der ersten Spalte der Matrix ausgegeben. Wenn die Attributvariable kein aktives Attribut im angegebenen Programmobjekt ist oder name mit dem reservierten Präfix "gl_" beginnt, wird -1 zurückgeliefert.
Die Verknüpfung zwischen einer Attributvariable und einem generischen Attributindex kann jederzeit durch den Aufruf von glBindAttribLocation spezifiziert werden. Attribut-Bindungen haben keine Auswirkungen, bis glLinkProgram aufgerufen wird. Nachdem ein Programmobjekt erfolgreich gelinkt wurde, bleiben die Index-Werte für Attributvariablen festm bis das nächste Mal erfolgreich gelinkt wird. glGetAttribLocation liefert die Verknüpfung, die beim letzten Aufruf von glLinkProgram für das spezifizierte Programmobjekt hergestellt wurde. Attribut-Verknüpfungen, die nach der letzten Link-Operation durchgeführt wurden, werden von glGetAttribLocation nicht ausgegeben.
Hinweise
glGetAttribLocation ist nur verfügbar, wenn die OpenGL-Version größer oder gleich 2.0 ist.
Fehlermeldungen
GL_INVALID_OPERATION wird generiert, wenn program kein von OpenGL erzeugter Wert ist.
GL_INVALID_OPERATION wird generiert, wenn program kein Programmobjekt ist.
GL_INVALID_OPERATION wird generiert, wenn program nicht erfolgreich gelinkt wurde.
GL_INVALID_OPERATION wird generiert, wenn glGetAttribLocation innerhalb eines glBegin-glEnd Blocks aufgerufen wird.
Zugehörige Wertrückgaben
glGetActiveAttrib mit dem Argument program und dem Index eines aktiven Attributs.
Siehe auch
glBindAttribLocation, glLinkProgram, glVertexAttrib, glVertexAttribPointer