glInterleavedArrays(GLenum format, GLsizei stride, const GLvoid *pointer);
//format:图片
//pointer:数组第一个顶点的第一个坐标的内存地址
此函数的效果相当于
int str;
str = stride;
if (str == 0)
{
str = s; //s为一个顶点到另一个顶点的跨距值
}
glDisable(GL_EDGE_FLAG_ARRAY);
glDisable(GL_INDEX_ARRAY);
glDisable(GL_SECONDARY_COLOR_ARRAY);
glDisable(GL_FOG_COORD_ARRAY);
if (et)
{
glEnableClientState(GL_TEXTURE_COORD_ARRAY);
glTexCoordPointer(st, GL_FLOAT, str, pointer);
}
else
{
glDisableClientState(GL_TEXTURE_COORD_ARRAY);
}
if (ec)
{
glEnableClientState(GL_COLOR_ARRAY);
glColorPointer(sc, tc, str, pointer+pc);
}
else
{
glDisableClientState(GL_COLOR_ARRAY);
}
if (en)
{
glEnableClientState(GL_NORMAL_ARRAY);
glNormalPointer(GL_FLOAT, str, pointer+pn);
}
else
{
glDisableClientState(GL_NORMAL_ARRAY);
}
glEnableClientState(GL_VERTEX_ARRAY);
glVertexPointer(sv,GL_FLOAT, str, pointer+pv);