Index: .gitignore
===================================================================
--- .gitignore	(revision 670c09af1971c9568423ac0b125725b93b7fb2f7)
+++ .gitignore	(revision aaf27cd6df9ae2ad862a15113ce300175efaad7a)
@@ -19,4 +19,5 @@
 Debug/
 Release/
+.vscode/
 
 include/
Index: new-game.cpp
===================================================================
--- new-game.cpp	(revision 670c09af1971c9568423ac0b125725b93b7fb2f7)
+++ new-game.cpp	(revision aaf27cd6df9ae2ad862a15113ce300175efaad7a)
@@ -2169,12 +2169,12 @@
 
    for (map<string, AttribInfo>::iterator it = smg.attribs.begin(); it != smg.attribs.end(); it++) {
-      glBindBuffer(GL_ARRAY_BUFFER, it->second.buffer);
-
       switch (it->second.attribType) {
          case AttribType::POINT_VARYING:
+            glBindBuffer(GL_ARRAY_BUFFER, it->second.buffer);
             glBufferSubData(GL_ARRAY_BUFFER, obj.vertex_vbo_offset * GLsizeof(it->second.type) * it->second.size,
                obj.num_points * GLsizeof(it->second.type) * it->second.size, getVectorAttribPtr(obj, it->second.fieldOffset));
             break;
          case AttribType::OBJECT_VARYING:
+            glBindBuffer(GL_ARRAY_BUFFER, it->second.buffer);
             for (unsigned int i = 0; i < obj.num_points; i++) {
                glBufferSubData(GL_ARRAY_BUFFER, (obj.vertex_vbo_offset + i) * GLsizeof(it->second.type) * it->second.size,
