diff options
Diffstat (limited to 'src/mesa/main/varray.c')
-rw-r--r-- | src/mesa/main/varray.c | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/src/mesa/main/varray.c b/src/mesa/main/varray.c index 5752a42..0251e89 100644 --- a/src/mesa/main/varray.c +++ b/src/mesa/main/varray.c @@ -527,13 +527,26 @@ _mesa_VertexAttribPointerARB(GLuint index, GLint size, GLenum type, } /* check for valid 'type' and compute StrideB right away */ + /* NOTE: more types are supported here than in the NV extension */ switch (type) { + case GL_BYTE: + ctx->Array.VertexAttrib[index].StrideB = size * sizeof(GLbyte); + break; case GL_UNSIGNED_BYTE: ctx->Array.VertexAttrib[index].StrideB = size * sizeof(GLubyte); break; case GL_SHORT: ctx->Array.VertexAttrib[index].StrideB = size * sizeof(GLshort); break; + case GL_UNSIGNED_SHORT: + ctx->Array.VertexAttrib[index].StrideB = size * sizeof(GLushort); + break; + case GL_INT: + ctx->Array.VertexAttrib[index].StrideB = size * sizeof(GLint); + break; + case GL_UNSIGNED_INT: + ctx->Array.VertexAttrib[index].StrideB = size * sizeof(GLuint); + break; case GL_FLOAT: ctx->Array.VertexAttrib[index].StrideB = size * sizeof(GLfloat); break; |