Unity3D LoadingScene

Unity3D LoadingScene

 

  大家都知道,在我们玩游戏的时候,在进入游戏的时候,都会看到会有一个进度条画面,这样做是因为场景加载的需要一定时间,尤其是场景资源很大的时候,都是通过引入一个过渡画面,显示游戏加载进度,这样提高了游戏的体验度。

 

 

using UnityEngine;

using System.Collections;

 

public class LoadingScene : MonoBehaviour

{

 

   public UISlider processBar;//进度条

   private AsyncOperation async;

   private uint _nowprocess;

   // Use this for initialization

   void Start()

    {

       _nowprocess = 0;

       StartCoroutine(loadScene());

    }

 

   IEnumerator loadScene()

    {

       //异步读取场景。

       async = Application.LoadLevelAsync("Scenename");

       async.allowSceneActivation = false;

       //读取完毕后返回,系统会自动进入目标场景

       yield return async;

 

    }

 

   void Update()

    {

       if (async == null)

       {

           return;

       }

 

       uint toProcess;

       Debug.Log(async.progress * 100);

       if (async.progress < 0.9f)

       {

           toProcess = (uint)(async.progress * 100);

       }

       else

       {

           toProcess = 100;

       }

 

       if (_nowprocess < toProcess)

       {

           _nowprocess++;

       }

 

       processBar.value = _nowprocess / 100f;

 

       if (_nowprocess == 100)

       {

           async.allowSceneActivation = true;

       }

    }

 

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值