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 异步加载场景的更多相关文章
- Unity异步加载场景loading条
using UnityEngine; using System.Collections; public class LoadingScene : MonoBehaviour { public UISl ...
- Unity异步加载场景
在游戏中,经常可以看到从一个关卡跳到另一个关卡时,有一个显眼的进度条,研究了下,其时也很简单: public void LoadAScene() { StartCoroutine(LoadSce ...
- unity之加载场景
游戏中的Loading分为:静态Loading和动态Loading. 简单形象的做个比喻: 静态Loading可能就是一张背景图.而动态的Loading就是在读取的同时有一个东西在“转圈”. 1.静态 ...
- Unity 异步加载 进度条
当我们进行游戏开发时,时常会进行场景切换,如果下个场景较大,切换时就会出现卡顿现象,甚至看起来像是"死机",非常影响用户体验,我们这时就可以运用异步加载,在界面上显示加载的进度条以 ...
- Unity3D_异步加载场景(进度条)
创建两个场景:现在的场景“NowScene”,要加载的场景“LoadScene”: “NowScene”如图所示,“LoadScene”任意: 创建脚本“AsyncLoadScene”,复制如下代码, ...
- Unity 异步加载进度条
public class View_LoadingScene : MonoBehaviour { //场景加载进度条对象 public GameObject loadingProgressBar; / ...
- 【Unity笔记】使用协程(Coroutine)异步加载场景
using UnityEngine; using System.Collections; using UnityEngine.SceneManagement; using System; public ...
- unity中加载场景不销毁以及切换场景重复实例化
问题描述 游戏开发中会有多个场景,有时会有这样的需求,我们需要保证场景跳转但是需要保持某个游戏对象不被销毁,比如:音乐 实现思路 unity中提供了DontDestroyOnLoad(),这个API ...
- Unity异步加载进度条
先上代码: using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngi ...
随机推荐
- Laravel-高级篇-Auth-数据迁移-数据填充
(慕课网_轻松学会Laravel-高级篇_天秤vs永恒老师_http://www.imooc.com/learn/702) 一.生成Auth所需文件 在Artisan控制台输入以下命令 php art ...
- laravel-模板引擎Blade
(慕课网_轻松学会Laravel-基础篇_天秤vs永恒老师) 一.概述 Blade是Laravel提供的一个既简单又强大的模板引擎 和其他流行的PHP模板引擎不一样,Blade并不限制你在视图view ...
- Android Dependencies小差号引起的问题
问题是由于Android Dependencies小差号引起的,下午一搞Android的哥们在群里说最近导入的几个工程每个都是Android Dependencies报错,小差号,我先说解决方法: 方 ...
- 图像重采样(CPU和GPU)
1 前言 之前在写影像融合算法的时候,免不了要实现将多光谱影像重采样到全色大小.当时为了不影响融合算法整体开发进度,其中重采样功能用的是GDAL开源库中的Warp接口实现的. 后来发现GDAL War ...
- ASP.Net MVC概念及基本
1.1概念 MVC是一种软件设计模式,即:Model(模型).View(视图).Controller(控制器) .其主要设计目标是将用户接口和逻辑层相分离,以便开发人员更好的关注逻辑层的设计和测试, ...
- Code First 数据注释--DatabaseGenerated
EF中可以使用DatabaseGenerated设置数据库字段的属性,它有三个枚举值:Computed.None.Identity Computed 表示这一列是计算所得 None 不做处理 Iden ...
- Java ------------获取不会重复的随机数
import java.util.UUID; public class UTest { public static void main(String[] args) { //UUID通过rand ...
- weblogic开机启动-超简单
1.编写weblogic启动脚本,命名为start_weblogic_server.sh,内容如下: #!/bin/bashnohup /home/weblogic/Oracle/Middlewar ...
- ORACLE触发器的管理与实际应用【weber出品】
一.INSTEAD OF触发器 对于简单的视图可以执行INSERT,UPDATE和DELETE操作,但是对于复杂视图,不允许直接执行INSERT,UPDATE,DELETE操作,当视图出现以下任何一种 ...
- WCF相关
1.WCF初探-1:认识WCF(概览)2.WCF初探-2:手动实现WCF程序3.WCF精通系列4.无废话WCF系列教程