diff --git a/src/osg/State.cpp b/src/osg/State.cpp index b7af8a497..a92603adf 100644 --- a/src/osg/State.cpp +++ b/src/osg/State.cpp @@ -506,12 +506,13 @@ void State::dirtyAllVertexArrays() void State::setInterleavedArrays( GLenum format, GLsizei stride, const GLvoid* pointer) { + disableAllVertexArrays(); + glInterleavedArrays( format, stride, pointer); - + // the crude way, assume that all arrays have been effected so dirty them and // disable them... dirtyAllVertexArrays(); - disableAllVertexArrays(); }