Freigeben über


glEdgeFlagPointer-Funktion

Die glEdgeFlagPointer-Funktion definiert ein Array von Edgeflags.

Syntax

void WINAPI glEdgeFlagPointer(
         GLsizei stride,
   const GLvoid  *pointer
);

Parameter

Schritt

Der Byteoffset zwischen aufeinanderfolgenden Edgeflags. Wenn stride null ist, sind die Edgeflags eng im Array gepackt.

Zeiger

Ein Zeiger auf das erste Edgeflag im Array.

Rückgabewert

Diese Funktion gibt keinen Wert zurück.

Fehlercodes

Der folgende Fehlercode kann von der glGetError-Funktion abgerufen werden.

Name Bedeutung
GL_INVALID_ENUM
stride oder count war negativ.

Bemerkungen

Die glEdgeFlagPointer-Funktion gibt den Speicherort und die Daten eines Arrays boolescher Edgeflags an, die beim Rendern verwendet werden sollen. Der stride-Parameter bestimmt den Byteoffset von einem Edgeflag zum nächsten, wodurch das Packen von Scheitelpunkten und Attributen in einem einzelnen Array oder Speicher in separaten Arrays ermöglicht wird. In einigen Implementierungen kann das Speichern der Scheitelpunkte und Attribute in einem einzelnen Array effizienter sein als die Verwendung separater Arrays.

Ein Edgeflagsarray wird aktiviert, wenn Sie die GL_EDGE_FLAG_ARRAY Konstante mit glEnableClientState angeben. Wenn diese Option aktiviert ist, verwendet glDrawArrays oder glArrayElement das Edgeflagsarray. Standardmäßig ist das Edgeflagarray deaktiviert.

Verwenden Sie glDrawArrays , um eine Sequenz von Grundtypen (alle vom gleichen Typ) aus vordefinierten Vertex- und Vertex-Attributarrays zu erstellen. Verwenden Sie glArrayElement , um Grundtypen durch Indizieren von Scheitelpunkten und Vertexattributen anzugeben, und glDrawElements , um eine Sequenz von Grundtypen durch Indizieren von Scheitelpunkten und Vertexattributen zu erstellen.

Sie können glEdgeFlagPointer nicht in Anzeigelisten einschließen.

Wenn Sie ein Edgeflagsarray mithilfe von glEdgeFlagPointer angeben, werden die Werte aller Edgeflagarrayparameter der Funktion in einem clientseitigen Zustand gespeichert, und statische Arrayelemente können zwischengespeichert werden. Da sich die Parameter des Edgeflagarrays in einem clientseitigen Zustand befinden, speichern und wiederherstellen glPushAttrib und glPopAttrib ihre Werte nicht.

Obwohl der Aufruf von glEdgeFlagPointer innerhalb eines glBegin-Glend-Paares / keinen Fehler generiert, sind die Ergebnisse nicht definiert.

Die folgenden Funktionen rufen Informationen im Zusammenhang mit der glEdgeFlagPointer-Funktion ab:

glGet mit argument GL_EDGE_FLAG_ARRAY_STRIDE

glGet mit argument GL_EDGE_FLAG_ARRAY_COUNT

glGetPointerv mit Argument GL_EDGE_FLAG_ARRAY_POINTER

glIsEnabled mit Argument GL_EDGE_FLAG_ARRAY

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client)
Windows 2000 Professional [nur Desktop-Apps]
Unterstützte Mindestversion (Server)
Windows 2000 Server [nur Desktop-Apps]
Header
Gl.h
Bibliothek
Opengl32.lib
DLL
Opengl32.dll

Weitere Informationen

glArrayElement

glBegin

glColorPointer

glDrawArrays

glEnableClientState

glEnd

glGet

glGetPointerv

glGetString

glIndexPointer

glIsEnabled

glNormalPointer

glPopAttrib

glPushAttrib

glTexCoordPointer

glVertexPointer