- public void LoadGame()
- {
- StartCoroutine(StartLoading("001"));
- }
- private IEnumerator StartLoading(string sceneName)
- {
- int displayProgress = 0;
- int toProgress = 0;
- AsyncOperation op = Application.LoadLevelAsync(sceneName); //异步对象
- op.allowSceneActivation = false;
- while (op.progress < 0.9f)
- {
- toProgress = (int)op.progress * 100;
- while (displayProgress < toProgress)
- {
- ++displayProgress;
- SetLoadingPercentage(displayProgress);
- yield return new WaitForEndOfFrame();
- }
- }
- toProgress = 100;
- while (displayProgress < toProgress)
- {
- ++displayProgress;
- SetLoadingPercentage(displayProgress);
- yield return new WaitForEndOfFrame();
- }
- op.allowSceneActivation = false;
- }
- private void SetLoadingPercentage(int DisplayProgress) //设置显示进度
- {
- proLoadingBar.value = DisplayProgress * 0.01f;
- labProgress.text = DisplayProgress.ToString() + "%";
- }
- }