void Update() { if (streamers.Length > 0) { bool initialized = true; float progress = 0; for (int i = 0; i < streamers.Length; ++i) { Streamer item = streamers[i]; progress += item.LoadingProgress / (float)streamers.Length; initialized = initialized && item.initialized; } if (LoadingProgressChanged != null) { LoadingProgressChanged.Invoke(progress); } if (initialized) { if (progress >= 1) { if (SceneLoaded != null) { SceneLoaded.Invoke(); } this.enabled = false; } } } }
private void Worker_ProgressChanged(object sender, ProgressChangedEventArgs e) { LoadingProgressChanged?.Invoke(e.ProgressPercentage); }