glInterleavedArrays-Funktion
Die glInterleavedArrays-Funktion gibt gleichzeitig mehrere verschachtelte Arrays in einem größeren Aggregatarray an und aktiviert sie.
Syntax
void WINAPI glInterleavedArrays(
GLenum format,
GLsizei stride,
const GLvoid *pointer
);
Parameter
-
format
-
Der Typ des zu aktivierende Arrays. Der Parameter kann einen der folgenden symbolischen Werte annehmen: GL _ V2F, GL _ V3F, GL _ C4UB _ V2F, GL _ C4UB _ V3F, GL _ C3F _ V3F, GL _ N3F _ V3F, GL _ C4F _ N3F _ V3F, GL _ T2F _ V3F, GL _ T4F _ V4F, GL _ T2F _ C4UB _ V3F, GL _ T2F _ C3F _ V3F, GL _ T2F _ N3F _ V3F, GL _ T2F _ C4F _ N3F _ V3F oder GL _ T4F _ C4F _ N3F _ V4F.
-
Schritt
-
Der Offset in Bytes zwischen jedem Aggregatarrayelement.
-
Zeiger
-
Ein Zeiger auf das erste Element eines Aggregatarrays.
Rückgabewert
Diese Funktion gibt keinen Wert zurück.
Fehlercodes
Die folgenden Fehlercodes können von der glGetError-Funktion abgerufen werden.
| Name | Bedeutung |
|---|---|
|
format war kein akzeptierter Wert. |
|
stride war ein negativer Wert. |
|
Die Funktion wurde zwischen einem Aufruf von glBegin und dem entsprechenden Aufruf von glEndaufgerufen. |
Hinweise
Mit der glInterleavedArrays-Funktion können Sie gleichzeitig mehrere verschachtelte Farb-, Normal-, Textur- und Scheitelpunktarrays angeben und aktivieren, deren Elemente Teil eines größeren Aggregatarrayelements sind. Bei einigen Speicherarchitekturen ist dies effizienter als die separate Angabe der Arrays.
Wenn der stride-Parameter 0 (null) ist, werden die Aggregatarrayelemente nacheinander gespeichert. andernfalls treten Aggregatarrayelemente in Bytes auf.
Der format-Parameter dient als Schlüssel, der beschreibt, wie einzelne Arrays aus dem Aggregatarray extrahiert werden:
- Wenn das Format ein T enthält, werden Texturkoordinaten aus dem verschachtelten Array extrahiert.
- Wenn C vorhanden ist, werden Farbwerte extrahiert.
- Wenn N vorhanden ist, werden normale Koordinaten extrahiert.
- Scheitelpunktkoordinaten werden immer extrahiert.
- Die Ziffern 2, 3 und 4 kennzeichnen, wie viele Werte extrahiert werden.
- F gibt an, dass Werte als Gleitkommawerte extrahiert werden.
- Wenn 4UB dem C folgt, können Farben auch als 4 Bytes ohne Vorzeichen extrahiert werden. Wenn eine Farbe als 4 Bytes ohne Vorzeichen extrahiert wird, befindet sich das vertex-Arrayelement, das folgt, an der ersten möglichen an Gleitkomma ausgerichteten Adresse.
Wenn Sie beim Kompilieren einer Anzeigeliste glInterleavedArrays aufrufen, wird sie nicht in die Liste kompiliert, sondern sofort ausgeführt.
Sie können keine Aufrufe von glInterleavedArrays in glDisableClientState zwischen Aufrufen von glBegin und dem entsprechenden Aufruf von glEnd einschließen.
Hinweis
Die glInterleavedArrays-Funktion ist nur in OpenGL Version 1.1 oder höher verfügbar.
Die glInterleavedArrays-Funktion wird auf clientseitiger Seite ohne Protokoll implementiert. Da die Vertexarrayparameter clientseitig sind, werden sie nicht von glPushAttrib und glPopAttrib gespeichert oder wiederhergestellt. Verwenden Sie stattdessen glPushClientAttrib und glPopClientAttrib.
Anforderungen
| Anforderung | Wert |
|---|---|
| Unterstützte Mindestversion (Client) |
Windows 2000 Professional [nur Desktop-Apps] |
| Unterstützte Mindestversion (Server) |
Windows 2000 Server [nur Desktop-Apps] |
| Header |
|
| Bibliothek |
|
| DLL |
|