Loading

http://www.xuebuyuan.com/1352732.html

加载游戏场景

直到新场景的资源全部加载完成,这种方式对用户体验显然是不好的,最传统的做法都是开个线程,一个线程用来处理数据加载,一个线程用进度条或是动画的方式提示玩家游戏并未卡死,而是等待。但是Unity3d没有多线程的概念,不过unity也给我们提供了StartCoroutine(协同程序)和LoadLevelAsync(异步加载关卡)后台加载场景的方法。

StartCoroutine为什么叫协同程序呢,所谓协同,就是当你在StartCoroutine的函数体里处理一段代码时,利用yield语句等待执行结果,这期间不影响主程序的继续执行,可以协同工作。而LoadLevelAsync则允许你在后台加载新资源和场景,所以再利用协同,你就可以前台用loading条或动画提示玩家游戏未卡死,同时后台协同处理加载的事宜

要切换场景,有个必要的工作没做。那就是在Unity里注册场景。

选File->Build Settings...,上面有个Scenes In Build,你要把你用到的场景都加到这个框里,程序才能正常调用,否则程序写了也无效。右下角有个Add Current的按钮,这是加载当前场景用的,你也可以直接把所有场景拖到这里。后面的数字是关卡ID,0是第一个要加载的场景

  public void Loading(int level)
    {
        LoadingPanal.SetActive(true);
        GameInfo.GAME_STATE = GameState.LOADING;
        StartCoroutine("Load", level);
    }
	IEnumerator Load(int level)
    {
        async=Application.LoadLevelAsync(level);
        yield return async;
    }
	// Update is called once per frame
	void Update ()
    {
        if (GameInfo.GAME_STATE == GameState.LOADING)
            GameInfo.LOAD_PRORESS = async.progress;
	}  }

  

时间: 2025-01-06 19:03:41

Loading的相关文章

使用css3制作简单的loading效果

<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>Document</title> <link rel="stylesheet" type="text/css" href="css/index.css"></head><b

Nginx 启动出错 error while loading shared libraries: libpcre.so.1

在 centos 6.5  64位上编译安装nginx1.63语法检查出错[root @localhost conf]# /usr/local/nginx/sbin/nginx -t /usr/local/nginx/sbin/nginx: error while loading shared libraries: libpcre.so.1: cannot open shared object file: No such file or directory 从错误看出是缺少lib文件导致,进一步

sqlplus: error while loading shared libraries解决方法

dbca建库后sqlplus提示如下 $ sqlplus / as sysdba sqlplus: error while loading shared libraries: /u01/app/oracle/product/11.2.0/dbhome_1/lib/libclntsh.so.11.1: cannot restore segment prot after reloc: Permission denied 解决方法 将selinux功能关掉 root用户 将/etc/selinux/c

Jquery Easy UI 实现页面的Loading效果(类似于Android的ProgressDialog)

前言 很常用的一种前端效果,比如当用户点击网页的某个按钮发送了一条异步请求,如果响应时间过长容易导致用户重复点击,一方面影响用户体验一方面容易造成不必要的服务端压力,Easy UI有现成的mask样式,简单封装一下就可以使用,之前查阅搜集了相关资料和文章,发现都介绍的都不是很完整,所以本篇blog就完整的记录一下通过Easy UI快速实现这种效果以及如何集成到项目中. 引入.封装和调用 首先当然是在我们的项目中集成jquery以及easyui的相关资源包,除了jquery的核心js文件,easy

JQuery图片加载显示loading和加载失败默认图片

在很多时候我们需要用到图片加载功能,在网上搜资料后就想为了以后使用方便重新整理了下,结果如图: 最后一张是加载失败显示的图片,没找到合适的图片,先用他顶替. 页面引用 <div class="container"> <div class="row block" id="img-list"> <div class="col-md-3"> <img src="/Assets/On

【CSS3】loading动画

HTML: <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>loading</title> </head> <body> <div> <ul> <li></li> <li></li> <li><

[Angular Router] Lazy loading Module with Auxiliary router

Found the way to handle Auxiliary router for lazy loading moudle and erge load module are different. In Erge loading, it is recommended to create a shell component, inside shell component you need to define the router-outlet for each Auxiliary routes

微信小程序之----加载中提示框loading

loading loading只有一个属性hidden .wxml <view> <loading hidden="{{hidden}}"> 加载中... </loading> <button bindtap="changeHidden">show/hidden</button> </view> .js Page({ data:{ hidden:true }, changeHidden: fun

poj-2336 Ferry Loading II(dp)

题目链接: Ferry Loading II Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 3946   Accepted: 1985 Description Before bridges were common, ferries were used to transport cars across rivers. River ferries, unlike their larger cousins, run on a

eclipse启动无响应,停留在Loading workbench状态,或老是加载不了revert resources

做开发的同学们或多或少的都会遇到eclipse启动到一定程度时,就进入灰色无响应状态再也不动了.启动画面始终停留在Loading workbench状态.反复重启,状态依旧. 多数情况下,应该是非正常关闭eclipse工作区的文件状态错误所导致的. 在工作区目录中,有一个.metadata目录,里面是工作区及各插件的信息,删除此目录,再重启eclipse,果然可以正常启动eclipse了,但原来工作区的配置和项目信息也都消失,直接显示的是eclipse欢迎界面. 那么怎么做才能保证之前的配置不丢