您的位置:首页 > 移动开发 > Unity3D

Unity:异步加载场景资源进度界面

2017-03-20 19:45 513 查看
创建加载界面LoadingScene,用于处理加载进度条。

导入NGUI资源包,在Unity3D菜单栏中选中NGUI-Open-Prefab Toolbar,在Prefab Toolbar窗口中,选中Control - Colored Progress Bar拖拽至Hierarchy面板,修改名字为"Loading"。

在Hierarchy面板,为Loading添加子物体Label,Label的内容为"loading",然后为UI Root的Camera创建脚本LoadingScripts。

LoadingScripts脚本代码如图所示:



异步加载场景otherScene的速度直接决定了进度条的实际进展速度。

但是这样做加载场景时loadScene一闪而过,直接跳转到了场景otherScene,无法看到进度条进展的过程.原因是,场景loadScene太小,加载场景loadScene的时间非常非常短,此时用加载场景的速度来控制进度条的进展速度就会让加载场景失去它存在的意义。上述代码简单实用性强,非常适合加载大场景大资源等耗时长的情况。

所以为了满足小资源/场景加载时也显示出进度条,使用如下图所示代码:



这里用到AsyncOperation另一个重要的属性AsyncOperation.allowSceneActivation。

当 acOp.allowSceneActivation = false时即使场景已经加载完成也不会自动跳转,直到acOp.allowSceneActivation = true。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  unity 异步 ngui
相关文章推荐