void glDrawArraySetHP( GLenum mode, const GLint* list, GLsizei count)
When glDrawArraySetHP is called, it iterates over count+1 array indices from the list. For 0i<count, glDrawArraySetHP uses list[i+1]list[i] sequential elements from each enabled array to construct a sequence of geometric primitives, beginning with element list[i]. mode specifies what kind of primitives are constructed, and how the array elements construct those primitives. If GL_VERTEX_ARRAY is not enabled, no geometric primitives are generated.
Vertex attributes that are modified by glDrawArraySetHP have an unspecified value after glDrawArraySetHP returns. For example, if GL_C4UB_V3F is enabled, the value of the current color is undefined after glDrawArraySetHP executes. Attributes that aren't modified remain well defined.
glDrawArraySetHP(mode, list, count) is functionally equivalent to:
for (i = 0; i < count; i++) glDrawArrays(mode, list[i], list[i+1] - list[i]);The behavior is undefined if list[i+1] is less than list[i] for any i in the range i0 and i<count.
glDrawArraySetHP is included in display lists. If glDrawArraySetHP is entered into a display list, the necessary array data (determined by the array pointers and enables) is also entered into the display list. Because the array pointers and enables are client- side state, their values affect display lists when the lists are created, not when the lists are executed.