Export (0) Print
Expand All
Expand Minimize

glInterleavedArrays function

Applies to: desktop apps only

The glInterleavedArrays function simultaneously specifies and enables several interleaved arrays in a larger aggregate array.

Syntax

void WINAPI glInterleavedArrays(
  GLenum format,
  GLsizei stride,
  const GLvoid *pointer
);

Parameters

format

The type of array to enable. The parameter can assume one of the following symbolic values: 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, or GL_T4F_C4F_N3F_V4F.

stride

The offset in bytes between each aggregate array element.

pointer

A pointer to the first element of an aggregate array.

Return value

This function does not return a value.

Error codes

The following error codes can be retrieved by the glGetError function.

NameMeaning
GL_INVALID_ENUM

format was not an accepted value.

GL_INVALID_VALUE

stride was a negative value.

GL_INVALID_OPERATION

The function was called between a call to glBegin and the corresponding call to glEnd.

Remarks

With the glInterleavedArrays function, you can simultaneously specify and enable several interleaved color, normal, texture, and vertex arrays whose elements are part of a larger aggregate array element. For some memory architectures, this is more efficient than specifying the arrays separately.

If the stride parameter is zero then the aggregate array elements are stored consecutively; otherwise stride bytes occur between aggregate array elements.

The format parameter serves as a key that describes how to extract individual arrays from the aggregate array:

  • If format contains a T, then texture coordinates are extracted from the interleaved array.
  • If C is present, color values are extracted.
  • If N is present, normal coordinates are extracted.
  • Vertex coordinates are always extracted.
  • The digits 2, 3, and 4 denote how many values are extracted.
  • F indicates that values are extracted as floating point values.
  • If 4UB follows the C, colors may also be extracted as 4 unsigned bytes. If a color is extracted as 4 unsigned bytes, the vertex array element that follows is located at the first possible floating-point aligned address.

If you call glInterleavedArrays while compiling a display list, it is not compiled into the list but is executed immediately.

You cannot include calls to glInterleavedArrays in glDisableClientState between calls to glBegin and the corresponding call to glEnd.

Note  The glInterleavedArrays function is only available in OpenGL version 1.1 or later.

The glInterleavedArrays function is implemented on the client side with no protocol. Because the vertex array parameters are client-side state, they are not saved or restored by glPushAttrib and glPopAttrib. Use glPushClientAttrib and glPopClientAttrib instead.

Requirements

Minimum supported client

Windows 2000 Professional

Minimum supported server

Windows 2000 Server

Header

Gl.h

Library

Opengl32.lib

DLL

Opengl32.dll

See also

glArrayElement
glColorPointer
glDrawArrays
glDrawElements
glEdgeFlagPointer
glEnableClientState
glGetPointerv
glIndexPointer
glNormalPointer
glPushAttrib
glPushClientAttrib
glTexCoordPointer
glVertexPointer

 

 

Send comments about this topic to Microsoft

Build date: 3/6/2012

Community Additions

ADD
Show:
© 2015 Microsoft