예제 #1
0
        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);
 }