Unity 异步加载场景

时间:2021-09-21 01:56:03

效果图如下:

Unity 异步加载场景

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

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&lowbar;异步加载场景(进度条)

    创建两个场景:现在的场景“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. SQL入门经典&lpar;四&rpar;之创建和修改数据表

    本章主要讲如何使用脚本创建数据库:如何使用脚本创建表:如何删除对象和修改对象. CREATE 语句:CREATE <object type> <onject name> 创建数 ...

  2. windows上用netstat查看端口&sol;进程占用

    windows上用netstat命令查看某个端口是否占用,被哪个进程所占用 1.查看端口的占用情况,获取进程的PID 命令: netstat -ano | findstr "<端口号& ...

  3. 整理时下流行的浏览器User-Agent大全

    总结整理时下流行的浏览器User-Agent大全 此文章转至:http://www.360doc.com/content/12/1012/21/7662927_241124973.shtml 用于学习 ...

  4. RocketMQ术语&lbrack;转&rsqb;

    RocketMQ RocketMQ是一款分布式.队列模型的消息中间件,具有以下特点:能够保证严格的消息顺序 能够保证严格的消息顺序 提供丰富的消息拉取模式 高效的订阅者水平扩展能力 实时的消息订阅机制 ...

  5. python eval函数

    eval()函数十分强大,官方demo解释为:将字符串str当成有效的表达式来求值并返回计算结果. 可以把字符串转为list.tuple .dict  等数据类型 1.把字符串转为字典 ####### ...

  6. C&num;输出40以内的所有奇数程序代码

    using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace Cons ...

  7. haskell学习笔记&lowbar;函数

    一开始学习函数式编程语言就被告知函数式编程语言是一种“定义式”的语言,而不是一种命令式的语言,在学习haskell的函数语法时,此感觉更加强烈,haskell的函数定义倾向于一种类似C++里面的swi ...

  8. jackson 转json&period; 过滤null值

    @Test public void tttttt() throws JsonGenerationException, JsonMappingException, IOException { Objec ...

  9. ABAP 开启制定路径下的文件或网址URL

    REPORT ZTEST001. CALL FUNCTION 'CALL_INTERNET_ADRESS' EXPORTING PI_ADRESS = * PI_TECHKEY = EXCEPTION ...

  10. REST API设计指导——译自Microsoft REST API Guidelines(四)

    前言 前面我们说了,如果API的设计更规范更合理,在很大程度上能够提高联调的效率,降低沟通成本.那么什么是好的API设计?这里我们不得不提到REST API. 关于REST API的书籍很多,但是完整 ...