LoadScene场景异步加载
using UnityEngine;
using System.Collections;
using UnityEngine.SceneManagement;
using UnityEngine.UI;
public class LoadScene: MonoBehaviour
{
public Slider Slider;//定义滑动条
private AsyncOperation async;
private int number = 0;
private int num = 0;
private void Start()
{
//赋初始值
Slider.value = 0;
//开启协程
StartCoroutine("start");
}
void Update()
{
//滑动条的移动
Slider.value = number / 100f;
}
//协程
private IEnumerator start()
{
//要加载的大场景Scene
async = SceneManager.LoadSceneAsync("Scene");
//初始加载场景不激活
async.allowSceneActivation = false;
//增加滑动平滑性
while (async.progress < 0.9f)
{
//加载进度
num = (int)async.progress * 100;
while (number < num)
{
++number;
//等待时长
yield return new WaitForSeconds(0);
}
}
num = 100;
//增加平滑效果
while (number < num)
{
++number;
//等待时长
yield return new WaitForSeconds(0);
}
//加载场景激活
async.allowSceneActivation = true;
}
}
注:加载的场景Scene需要要将场景添加到构建设置,请使用菜单File-> Build Settings ...之后才可使用.......