implmented vertex arrays