glEdgeFlagPointer
Inhaltsverzeichnis
glEdgeFlagPointer
Name
glEdgeFlagPointer - definiert einen Zeiger auf ein Feld von EdgeFlags. (siehe glEdgeFlag)
Delphi-Spezifikation
procedure glEdgeFlagPointer(stride: TGLsizei; const _pointer: PGLvoid);
Parameter
stride | Definiert den Byteoffset zwischen aufeinanderfolgenden Einträgen im Feld. Wenn stride 0 ist (Initialzustand) wird dies so interpretiert, dass die EdgeFlags ohne Zwischenraum im Feld zusammengepackt sind. Der Initialzustand ist 0. |
---|---|
_pointer | Ist ein Zeiger auf den ersten Eintrag in das EdgeFlag Array. (Für C-Programmierer: Der Initialzustand ist 0) |
Beschreibung
glEdgeFlagPointer bestimmt Ort und Inhalt eines Feldes mit Booleanwerten welches EdgeFlags (siehe glEdgeFlag) darstellt die wärend des Renders benutzt werden sollen. stride bestimmt den Abstand der Bytes zwischen aufeinanderfolgenden Flags. Dies Erlaubt es Vertices und Vertexeigenschaften in ein bzw. mehrere Felder zu speichern. (Das speichern in einem Feld kann bei einigen Implementationen effizienter sein. siehe glInterleavedArrays)
Wenn ein EdgeFlag Array spezifiziert wird, werden stride und _pointer als klientseitige Zustände gespeichert.
Orginaltext:
glEdgeFlagPointer specifies the location and data of an array of boolean edge flags to use when rendering. stride specifies the byte stride from one edge flag to the next allowing vertices and attributes to be packed into a single array or stored in separate arrays. (Sin-(Single-array gle-array storage may be more efficient on some implementations; see glInterleavedArrays.) When an edge flag array is specified, stride and pointer are saved as client-side state.
Um das EdgeFlag Array zu aktivieren bzw. deaktivieren rufen Sie glEnableClientState und glDisableClientState mit dem Argument GL_EDGE_FLAG_ARRAY auf. Wenn aktiviert wird das EdgeFlag Array bei Aufrufen von glDrawArrays, glDrawElements, oder glArrayElement benutzt.
Orginaltext:
To enable and disable the edge flag array, call glEnableClientState and glDisableClientState with the argument GL_EDGE_FLAG_ARRAY. If enabled, the edge flag array is used when glDrawArrays, glDrawElements, or glArrayElement is called.
Benutzen Sie glDrawArrays um eine Sequenz von Primitiven (alle vom selben Typ) aus vordefinierten Vertex- und Vertexattributfelder zu konstruieren.
Benutzen Sie glArrayElement um Primitive durch Indizierung von Vertices und Vertexattributen zu spezifizieren.
Benutzen Sie glDrawElements um eine Sequenz von Primitiven durch Indizierung von Vertices und Vertexattributen zu konstruieren.
Orginaltext:
Use glDrawArrays to construct a sequence of primitives (all of the same type) from prespecified vertex and vertex attribute arrays. Use glArrayElement to specify primitives by indexing vertices and vertex attributes and glDrawElements to construct a sequence of primitives by indexing vertices and vertex attributes.
Hinweise
glEdgeFlagPointer ist erst ab OpenGL Version 1.1 oder höher verfügbar.
Das EdgeFlag Array ist standardmäßig deaktiviert und wird bei Aufrufen von glArrayElement, glDrawElements oder glDrawArrays nicht benutzt.
Ein Aufruf von glEdgeFlagPointer innerhalb eines glBegin-glEnd Blocks ist nicht erlaubt. Ein Fehler kann, muss aber nicht generiert werden. Wenn kein Fehler generiert wurde ist die Operation undefiniert.
glEdgeFlagPointer ist normalerweise Klientseitig implementiert.
Parameter für das EdgeFlag Array sind klientseitige Zustände und werden deshalb nicht von glPushMatrix bzw. glPopMatrix gespeichert bzw. wiederhergestellt. Benutzen Sie statt dessen glPushClientAttrib und glPopClientAttrib.
Fehlermeldungen
GL_INVALID_ENUM wird generiert wenn stride negativ ist.
GL_INVALID_OPERATION kann generiert werden wenn glEdgeFlagPointer innerhalb eines glBegin-glEnd Blocks aufgerufen wird. (siehe Hinweise)
Zugehörige Wertrückgaben
glIsEnabled mit Token GL_EDGE_FLAG_ARRAY
glGet mit Token GL_EDGE_FLAG_ARRAY_STRIDE
glGetPointerv mit Token GL_EDGE_FLAG_ARRAY_POINTER
Siehe auch
glArrayElement, glColorPointer, glDrawArrays, glDrawElements, glEnable, glGetPointerv, glIndexPointer, glNormalPointer, glPopClientAttrib, glPushClientAttrib, glTexCoordPointer, glVertexPointer