--- deliantra/Deliantra-Client/rendercache.c 2007/08/11 11:41:24 1.2 +++ deliantra/Deliantra-Client/rendercache.c 2007/08/11 13:46:40 1.3 @@ -1,6 +1,6 @@ typedef struct { GLenum mode; - GLenum format; // GL_T2F_V3F, GL_V2F + GLenum format; // 0, GL_T2F_V3F, GL_V2F GLint texname; unsigned char r, g, b, a; } rc_key_t; @@ -89,10 +89,6 @@ char *arr_pv = SvPV (arr, len); GLsizei stride; - stride = key->format == GL_T2F_V3F ? sizeof (float) * 5 - : key->format == GL_V2F ? sizeof (float) * 2 - : 65536; - if (key->texname) { glBindTexture (GL_TEXTURE_2D, key->texname); @@ -102,6 +98,11 @@ glDisable (GL_TEXTURE_2D); glColor4ub (key->r, key->g, key->b, key->a); + + stride = key->format == GL_T2F_V3F ? sizeof (float) * 5 + : key->format == GL_V2F ? sizeof (float) * 2 + : 65536; + glInterleavedArrays (key->format, 0, (void *)arr_pv); glDrawArrays (key->mode, 0, len / stride); }