diff --git a/extras/Demo/Source/Demos/OpenGLDemo.cpp b/extras/Demo/Source/Demos/OpenGLDemo.cpp index eb8f9fa6f2..f6b3771f18 100644 --- a/extras/Demo/Source/Demos/OpenGLDemo.cpp +++ b/extras/Demo/Source/Demos/OpenGLDemo.cpp @@ -82,6 +82,14 @@ struct OpenGLDemoClasses } } + void disable (OpenGLContext& openGLContext) + { + if (position != nullptr) openGLContext.extensions.glDisableVertexAttribArray (position->attributeID); + if (normal != nullptr) openGLContext.extensions.glDisableVertexAttribArray (normal->attributeID); + if (sourceColour != nullptr) openGLContext.extensions.glDisableVertexAttribArray (sourceColour->attributeID); + if (texureCoordIn != nullptr) openGLContext.extensions.glDisableVertexAttribArray (texureCoordIn->attributeID); + } + ScopedPointer position, normal, sourceColour, texureCoordIn; private: @@ -145,8 +153,8 @@ struct OpenGLDemoClasses vertexBuffer.bind(); attributes.enable (openGLContext); - glDrawElements (GL_TRIANGLES, vertexBuffer.numIndices, GL_UNSIGNED_INT, 0); + attributes.disable (openGLContext); } }