The problem with offset-per-tile mode is that vshift isn't updated using the new ypos.