Unity 異步加載進度條


 1 public class View_LoadingScene : MonoBehaviour
 2     {
 3         //場景加載進度條對象
 4         public GameObject loadingProgressBar;
 5         //進度條組件
 6         private Slider _loadingProgressBarComp;
 7         //當前進度值
 8         private float _curProgressValue = 0f;
 9 
10         private AsyncOperation _asyncOp;
11         private void Awake()
12         {
13             if(loadingProgressBar != null)
14             {
15                 //獲取進度條組件
16                 _loadingProgressBarComp = loadingProgressBar.GetComponent<Slider>();
17             }
18         }
19         private void Start()
20         {
21       
22             StartCoroutine("LoadingLevelAsync");
23         }
24         private void Update()
25         {
26             //模擬加載進度
27             if(_loadingProgressBarComp.value <= 1f)
28             {
29                 SimulateLoad();
30             }
31             _loadingProgressBarComp.value = _curProgressValue;
32 
33         }
34 
35         private void SimulateLoad()
36         {
37             _curProgressValue += 0.01f;         
38         }
39 
40         //異步加載核心函數
41         IEnumerator LoadingLevelAsync()
42         {
43             _asyncOp = SceneManager.LoadSceneAsync("2_LogonScene");
44             _curProgressValue = _asyncOp.progress;
45             yield return _asyncOp;
46         }
47     }

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM