migrated to using vbo