效果图如下:

今天一直在纠结如何加载场景,中间有加载画面和加载完毕的效果动画!

A 场景到 B ,  看见网上的做法都是 A –> C –> B。  C场景主要用于异步加载B 和 播放一些加载场景的动画

AsyncOperation op = Application.LoadLevelAsync("C");   异步加载C场景

op.allowSceneActivation = false; 加载完毕之后不自动跳转到B场景(在加载结束的时候,就可以播放一些加载完毕的动画) 播放完动画时候

op.allowSceneActivation = true; 就能进入B场景了O(∩_∩)O~

op.progress;  获取异步加载场景实际的进度值(0-1)

using UnityEngine;
using System.Collections; public class LoadSceneB : MonoBehaviour { public UISlider slider; //进度条 void Start () {
LoadGame();
} public void LoadGame() {
StartCoroutine(StartLoading("C"));
} public IEnumerator StartLoading(string sceneName)
{
AsyncOperation op = Application.LoadLevelAsync(sceneName);
op.allowSceneActivation = false; /* 实际根据场景加载的进度,来显示进度
while(op.progress < 0.9f)
{
slider.value = op.progress; //实际加载场景的进度值显示在Slider里面
yield return new WaitForEndOfFrame();
}*/ //由于C场景只有一张图加载太快了,以下代码就模拟下加载
for (int i = ; i < ; i++)
{
slider.value = i / 100f;
yield return new WaitForSeconds(0.01f);
} slider.value = ;
yield return new WaitForEndOfFrame();
op.allowSceneActivation = true; } }

源代码:http://yunpan.cn/cf4uz69Ffmbyc  提取码 c8f3

原文地址:http://blog.csdn.net/huang9012/article/details/38659011 (还介绍如何慢慢的让进度加载100情况)

Unity 异步加载场景的更多相关文章

  1. Unity异步加载场景loading条

    using UnityEngine; using System.Collections; public class LoadingScene : MonoBehaviour { public UISl ...

  2. Unity异步加载场景

    在游戏中,经常可以看到从一个关卡跳到另一个关卡时,有一个显眼的进度条,研究了下,其时也很简单: public void LoadAScene() {    StartCoroutine(LoadSce ...

  3. unity之加载场景

    游戏中的Loading分为:静态Loading和动态Loading. 简单形象的做个比喻: 静态Loading可能就是一张背景图.而动态的Loading就是在读取的同时有一个东西在“转圈”. 1.静态 ...

  4. Unity 异步加载 进度条

    当我们进行游戏开发时,时常会进行场景切换,如果下个场景较大,切换时就会出现卡顿现象,甚至看起来像是"死机",非常影响用户体验,我们这时就可以运用异步加载,在界面上显示加载的进度条以 ...

  5. Unity3D_异步加载场景(进度条)

    创建两个场景:现在的场景“NowScene”,要加载的场景“LoadScene”: “NowScene”如图所示,“LoadScene”任意: 创建脚本“AsyncLoadScene”,复制如下代码, ...

  6. Unity 异步加载进度条

    public class View_LoadingScene : MonoBehaviour { //场景加载进度条对象 public GameObject loadingProgressBar; / ...

  7. 【Unity笔记】使用协程(Coroutine)异步加载场景

    using UnityEngine; using System.Collections; using UnityEngine.SceneManagement; using System; public ...

  8. unity中加载场景不销毁以及切换场景重复实例化

    问题描述 游戏开发中会有多个场景,有时会有这样的需求,我们需要保证场景跳转但是需要保持某个游戏对象不被销毁,比如:音乐 实现思路 unity中提供了DontDestroyOnLoad(),这个API ...

  9. Unity异步加载进度条

    先上代码: using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngi ...

随机推荐

  1. 【公告】CSDN个人空间将于2014年4月20日全新改版上线

    尊敬的用户:   你们好!           CSDN个人空间将在2014年4月20日全新改版上线!        CSDN个人空间是2008年8月推出的服务,致力于给广大用户提供在线技术分享和资料 ...

  2. [TypeScript] Avoid any type

    To avoid using "any" type is a best pratice. The reason for that is it disable the power o ...

  3. IP转发和子网路由

    IP地址的分类 在TCP/IP协议中,协议栈分为4层.从上到下依次是应用层.运输层.网络层.网络接口层. IP协议就工作在网络层.IP协议将纷繁复杂的物理层协议屏蔽掉,对上层提供统一的描述和管理服务. ...

  4. Kerberos-KDC

    Kerberos提供一种较好的解决方案,它是由MIT发明的,Kerberos建立了一个安全的.可信任的密钥分发中心(KDC, Key Distribution Center).Kerberos是一种认 ...

  5. vs2012快捷键失效解决办法

    快速解决vs开发工具快捷键失效,看图

  6. artDialog Error: document.compatMode === "BackCompat 报错原因

    今天在使用artDialog的时候报错了提示artDialog Error: document.compatMode === "BackCompat 查了网上说 可以设置<!DOCTY ...

  7. Android之Activity启动的源码简介

    从一个简单的startActivity开始 进入了Activity.java public void startActivity(Intent intent) { this.startActivity ...

  8. 工程与科学数值方法的Matlab实现

    %stats.m function [mean,stdev]=stats(x) n=length(x);mean=sum(x)/n;stdev=sqrt(sum((x-mean).^2/(n-1))) ...

  9. .net 2.0中半角全角错误的解决办法

    VS2005中.net 2.0编译报错如下所示:'System.Windows.Forms.ImeMode' does not contain a definition for 'OnHalf'.只需 ...

  10. iOS 关于时间戳的一些细节

    最近遇到一个bug,在iPhone上获取当前的时间戳,没有问题,而用iPad来测试的时候,出现了时间戳不对.当时的代码 (需要精确到毫秒,所以*1000) NSTimeInterval t = [[N ...