Why do we destroy and recreate buffers here? Can't we just update the existing ones?