diff --git a/include/osg/TriangleIndexFunctor b/include/osg/TriangleIndexFunctor index f8139acec..be3a5a9a2 100644 --- a/include/osg/TriangleIndexFunctor +++ b/include/osg/TriangleIndexFunctor @@ -130,13 +130,14 @@ public: break; } } - + virtual void drawElements(GLenum mode,GLsizei count,const GLubyte* indices) { if (indices==0 || count==0) return; - typedef const GLubyte* IndexPointer; - + typedef GLubyte Index; + typedef const Index* IndexPointer; + switch(mode) { case(GL_TRIANGLES): @@ -180,7 +181,7 @@ public: case(GL_TRIANGLE_FAN): { IndexPointer iptr = indices; - unsigned int first = *iptr; + Index first = *iptr; ++iptr; for(GLsizei i=2;i