Application(应用程序API)(Legacy)

访问应用程序的运行时数据。

这个类包含查找信息和控制运行时数据的静态方法。

静态变量说明
absoluteURL到web播放器数据文件夹的绝对路径(只读)。
backgroundLoadingPriority后台装载线程优先级。
dataPath包含游戏数据文件夹的路径(只读)。
genuine如果编译后的应用程序被任何方式改变的了,返回假。
genuineCheckAvailable如果可以确认应用程序的完整性返回真。
internetReachability返回设备上的网络可达性目前可能的类型。
isEditor是在Unity编辑器内运行?
isLoadingLevel是否有一些场景正在被加载(只读)?
isPlaying当在任何种类的播放器时,返回真(只读)。
isWebPlayer是否在一个网络播放器中运行?(只读)
levelCount可用的关卡总数。(只读)
loadedLevel最后加载的关卡索引(只读),也就是已加载的关卡或上次加载的关卡索引。
loadedLevelName最后加载的关卡的名字。(只读)也就是已加载的或上次加载的关卡名称。
persistentDataPath包含一个持久数据目录的路径(只读)。
platform返回游戏运行的平台(只读)。
runInBackground应用程序在后台时是否应该被运行?
srcValue相对于html文件的web播放器数据文件的路径(只读)。
streamedBytes我们从主Unity网页流中下载了多少字节(只读)
streamingAssetsPath包含一个到StreamingAssets文件夹的路径。(只读)
systemLanguage用户操作系统正在运行的语言。
targetFrameRate命令游戏尝试以一个特定的帧率渲染。
temporaryCachePath包含一个临时数据/缓存目录的路径(只读)。
unityVersion用于播放该内容的Unity运行时的版本。
webSecurityEnabled指示是否webplayer的安全模式是否被启用。
静态函数说明
CancelQuit取消退出该应用程序。这可以用来在退出游戏的时候显示一个退出画面。
CanStreamedLevelBeLoaded可以流数据加载关卡么?
CaptureScreenshot捕捉屏幕到filename路径,保存为PNG文件。
ExternalCall调用一个包含在网页中的函数(只用于Web Player)。
ExternalEval调用包含在网页中的片段脚本函数(只用于Web Player)。
GetStreamProgressForLevel下载的进度是多少?
HasProLicense是具有Unity Pro许可证激活?
HasUserAuthorization检查用户是否有权在网页中使用摄像头和麦克风。
LoadLevel通过关卡的名字或索引来加载关卡。
LoadLevelAdditive累加一个关卡,也就是说,加载一个新的场景,当前场景不会被销毁。
LoadLevelAdditiveAsync在后台异步累加关卡,也就是说在后台非同步加载新的场景,但当前的场景不会被销毁。
LoadLevelAsync在后台异步加载关卡,也就是说,在后台非同步加载新的场景。
OpenURL在浏览器中打开url 。
Quit退出应用程序。在编辑器或者web播放器中退出被忽略。
RegisterLogCallback在一个日志信息上注册一个委托来被调用。
RegisterLogCallbackThreaded在一个日志信息上注册一个委托来被调用。
RequestUserAuthorization在webplayer请求授权使用摄像头或麦克风。

示例:

Application.LoadLevelAsync 异步加载关卡

在后台异步加载关卡,也就是说,在后台非同步加载新的场景。

Unity将在后台线程完整加载场景所有资源和物体。这允许你加载一个新的关卡,同时当前的关卡仍在播运行,显示进度条或者创建一个完整的流世界,在那里你不断的加载和卸载基于程序位置不同的部分,在游戏中不会有任何的中断。

isDone变量来自AsyncOperation异步操作的结果,可以用于如果关卡加载完成的查询。

当编译一个游戏Unity自动优化资源,LoadLevelAsync将从硬盘以线性加载它们避免从磁盘寻道时间。

注意,背景加载优先级在Unity编辑器远远低于网络播放器或独立版编译。在编辑器你或许也得到比播放器更多的加载中断。

  1. using UnityEngine;
  2. using System.Collections;
  3. public class ExampleClass : MonoBehaviour {
  4. IEnumerator Start() {
  5. AsyncOperation async = Application.LoadLevelAsync("MyBigLevel");
  6. yield return async;
  7. Debug.Log("Loading complete");
  8. }
  9. }