bug fix: we should not reset vertex attrib, instead during glVertexAttribPointer, we need to check whether current buffer binding matches vertex attrib whose buffer binding