Application类
来源:互联网 发布:nachos java文件系统 编辑:程序博客网 时间:2024/04/29 05:50
1.四 个数据文件路径
void Start(){ //4 个数据文件路径 Debug.Log("_Application_DataPath.cs:"); //返回程序的数据文件所在文件夹的相对路径(只读) Debug.Log("dataPath: " + Application.dataPath.ToString()); //返回一个持久化数据存储目录的相对路径(只读) Debug.Log("persistentDataPath: " + Application.persistentDataPath.ToString()); //返回流数据的缓存目录的相对路径(只读) Debug.Log("streamingAssetsPath: " + Application.streamingAssetsPath.ToString()); //返回一个临时数据的缓存目录的相对路径(只读) Debug.Log("temporaryCachePath: " + Application.temporaryCachePath.ToString());}
2.关卡
void Start(){ Debug.Log("_Application_Level.cs:"); //返回当前场景索引值 Debug.Log("loadedLevel: " + Application.loadedLevel.ToString()); //返回当前场景的名字 Debug.Log("loadedLevelName: " + Application.loadedLevelName.ToString()); //返回可被加载场景的数量 Debug.Log("levelCount: " + Application.levelCount.ToString()); //加载关卡销毁所有物体 Application.LoadLevel(0); //Application.LoadLevelAsync异步加载关卡, 将新关卡加载到当前场景 Application.LoadLevelAsync(0); //加载新的场景,但当前的场景不会被销毁。 Application.LoadLevelAdditive(0); //在后台异步累加关卡,也就是说在后台非同步加载新的场景,但当前的场景不会被销毁。 Application.LoadLevelAdditiveAsync(0); /* 网络流媒体播放器 (Streaming Web Player) 允许场景 0 (Scene 0) 完成加载后立刻开始播放网页游戏。如果游戏有 10 个关卡,开始播放第 1 个关卡前让播放器等待并下载第 2-10 个关卡的所有资源并没有太大意义。发布网络流媒体播放器(Streaming Web Player) 时,必须下载的资源将按照它们在场景 (Scene) 文件中的顺序来进行排列。场景 0 (Scene 0) 中包含的所有资源下载完成后,网络播放器 (Streaming Web Player) 开始播放。 简言之,网络流媒体播放器 (Streaming Web Player) 将让玩家玩游戏的速度比以前更快。 唯一需要做的事就是检查,确保想要加载的下个关卡在加载前已完成流式处理。 一般来说,在非流媒体播放器中,用户使用下列代码加载关卡: Application.LoadLevel("levelName"); 在网络流媒体播放器 (Streaming Web Player) 中,必须先检查关卡是否完成流式处理。该步骤通过 CanStreamedLevelBeLoaded() 函数完成。 */ Application.CanStreamedLevelBeLoaded(0); //如果想要向玩家显示关卡数据流的进展情况,如做一个进度条或其他表现形式,可访问 GetStreamProgressForLevel()进一步了解。 Application.GetStreamProgressForLevel(0); //卸载与给定的场景相关的所有对象 Application.UnloadLevel(0);}
3.截屏
//U3D自带的截图,有点卡。此方法在web模式下无效。每帧只执行一次,同一帧中只有最后一次调用才生效。Application.CaptureScreenshot(filename);//网上的void GetCapture(){ RenderTexture renderTex = Camera.main.targetTexture; int width = renderTex.width; int height = renderTex.height; Texture2D tex = new Texture2D(renderTex.width, renderTex.height, TextureFormat.ARGB32, false); tex.ReadPixels(new Rect(0, 0, width, height), 0, 0); tex.Compress(false);//对屏幕缓存进行压缩 RenderTexture.active = renderTex; tex.ReadPixels(new Rect(0, 0, renderTex.width, renderTex.height), 0, 0); tex.Apply(); RenderTexture.active = null; byte[] imagebytes = tex.EncodeToPNG();//转化为png图 File.WriteAllBytes(Application.dataPath + "/screencapture.png", imagebytes);//存储png图}
4.系统信息,程序信息,U3D信息
//返回当前运行平台Debug.Log("platform: " + Application.platform.ToString());//当前运行平台是否为一个已知的控制台平台Debug.Log("isConsolePlatform:" + Application.isConsolePlatform.ToString());//当前运行平台是否为一个已知的移动平台Debug.Log("isMobilePlatform:" + Application.isMobilePlatform.ToString());//返回当前场景是否在运行Debug.Log("isPlaying: " + Application.isPlaying.ToString());//返回当前场景是否处于UNITY编辑模拟Debug.Log("isEditor: " + Application.isEditor.ToString());//公司名字。。。Debug.Log("companyName:" + Application.companyName.ToString());//产品名字。。。Debug.Log("productName:" + Application.productName.ToString());//应用程序建立后被改变则返回true,否则返回false。 被改变指的是什么。。。。//Application.genuineCheckAvailable 应与 Application.genuine 一并使用,以确认应用程序的完整性可得到实际验证。访问 Application.genuine 属性是一项相当昂贵的操作,不应用于帧更新期间或其他时序要求严格的代码。Debug.Log("genuine:" + Application.genuine.ToString());Debug.Log("genuineCheckAvailable:" + Application.genuineCheckAvailable.ToString());//是否激活U3DDebug.Log("HasProLicense" + Application.HasProLicense().ToString());// 应用安装方式/* Unknown 应用程序安装模式未知。 Application.Store 通过网上商店安装的应用。 Application.DeveloperBuild 应用程序安装,通过开发者模式。 Application.Adhoc 通过临时分布安装的应用。 好像是通过广告还是什么鬼。。 Application.Enterprise 应用程序安装,通过企业分布。 Application.Editor 应用程序运行在编辑模式。 */Debug.Log("installMode" + Application.installMode.ToString());// 网络连接方式/* NotReachable 无网络连接 ReachableViaCarrierDataNetwork 网络通过运营商数据网络 ReachableViaLocalAreaNetwork 网络通过WiFi或电缆 */Debug.Log("internetReachability" + Application.internetReachability.ToString());//打开一个网站Application.OpenURL("www.baidu.com");//结束程序Application.Quit();//当应用程序在后台运行时,该应用程序应该运行吗?Debug.Log("runInBackground" + Application.runInBackground.ToString());// 沙盒类型。/* Unknown 未知 NotSandboxed 不运行在沙盒环境中 Sandboxed 运行在沙盒环境中 SandboxBroken 运行在破碎的沙盒环境中, 这又是什么鬼*/Debug.Log("sandboxType" + Application.sandboxType.ToString());// 堆栈跟踪日志记录选项。/* None 没有堆栈跟踪将输出到日志。 ScriptOnly 只有管理堆栈跟踪将输出。 Full 本地和托管堆栈跟踪将被记录。 */Debug.Log("stackTraceLogType:" + Application.stackTraceLogType.ToString());//系统语言Debug.Log("systemLanguage:" + Application.systemLanguage.ToString());/* 指示游戏在指定的帧速率下进行渲染。 设置targetFrameRate为-1(默认值)使单机游戏尽可能快的渲染且网页游戏呈现在50-60帧/秒,取决于平台。 注意,设置targetFrameRate不保证帧速率。由于平台的详情,可能会有波动,或游戏可能无法达到帧速率,因为电脑太慢。 如果垂直同步设置质量目标帧率设置,是不容忽视的,和VBLANK间隔代替。在qualitysettings的vblankcount属性可以被用来限制帧率的屏幕刷新率(每秒60帧画面可以通过设置vblankcount为2限30 fps) 在编辑器中targetFrameRate被忽略。 */Debug.Log("targetFrameRate" + Application.targetFrameRate.ToString());//U3D版本Debug.Log("unityVersion" + Application.unityVersion);//应用程序版本Debug.Log("version" + Application.version);//此方法用于注册一个委托来调用日志信//Application.logMessageReceived += null;//Application.logMessageReceivedThreaded += null;//Application.logMessageReceived += null//日志的输出信息string outPut = "";//堆栈跟踪信息string stack = "";//日志类型string logType = "";int tp = 0;void Update(){ if (tp == 0) { Debug.Log("outPut: " + outPut); Debug.Log("stack: " + stack); Debug.Log("logType: " + logType); Debug.Log("tp: " + tp.ToString()); }}void OnEnable(){ Application.logMessageReceived += MyCallBack;}void OnDisable(){ Application.logMessageReceived -= MyCallBack;}void MyCallBack(string logString, string stackStrace, LogType type){ outPut = logString; stack = stackStrace; logType = type.ToString();}//应用程序版本Debug.Log("version" + Application.version);//独特的云项目标识。每一个项目都是独一无二的Debug.Log("cloudProjectId" + Application.cloudProjectId.ToString());//在运行时返回应用程序包标识符。Debug.Log("bundleIdentifier" + Application.bundleIdentifier.ToString());//后台加载线程优先级。Debug.Log("backgroundLoadingPriority" + Application.backgroundLoadingPriority.ToString());//CancelQuit用法, Application.isShowingSplashScreenpublic float showSplashTimeout = 2.0F;private bool allowQuitting = false;void Awake(){ DontDestroyOnLoad(this.gameObject);}void OnApplicationQuit(){ if (Application.loadedLevelName.ToLower() != "finalsplash") StartCoroutine("DelayedQuit"); if (!allowQuitting) Application.CancelQuit();}IEnumerator DelayedQuit(){ Application.LoadLevel("finalsplash"); yield return new WaitForSeconds(showSplashTimeout); allowQuitting = true; Application.Quit();}
5.WebPlayer
//application.absoluteurl和application.srcvalue让你发现如果你的unityweb数据文件被移动到另一个位置或是被链接到其它地方。你可能想保护你的数据文件以防止盗版。Debug.Log("absoluteURL" + Application.absoluteURL.ToString());Debug.Log("srcValue" + Application.srcValue.ToString());//在网页中调用一个函数。Application.ExternalCall(functionName, params);//调用网页中的脚本函数。Application.ExternalEval(script.functionName);//检查用户是否已授权使用网络摄像头或麦克风。Application.HasUserAuthorization(UserAuthorization.Microphone | UserAuthorization.WebCam);//我们从主网络流下载了多少字节(只读)。Debug.Log("streamedBytes" + Application.streamedBytes.ToString());//指示是否webplayer的安全模式启用。Debug.Log("webSecurityEnabled" + Application.webSecurityEnabled.ToString());//不知道什么鬼。。。Debug.Log("webSecurityHostUrl" + Application.webSecurityHostUrl.ToString());
————>U3D版本为5.2.1f1
0 0
- Application类
- Application类
- Application类
- Application类
- Application类
- Application类
- Application类
- Application类
- Application类
- Application类
- Application类
- Application类
- Application类
- Application类
- Application类
- Application类
- Enhancing the Application class 优化Application类
- 类中使用application
- Use openCV lib in either Pre-built libraries or yourself build libs
- jdbcTemplate模板的一些方法初学笔记
- *LeetCode-Count Univalue Subtrees
- css中padding、margin属性的区别和详解
- Java中匿名类使用方法总结
- Application类
- U3D_API_解析
- spring事务管理配置初学
- *LeetCode-Find the Celebrity
- 增强tool.God
- Android Api Demos登顶之路(107)View-->ExpanableLists-->Custom Adapter
- shell Unversal framework修复方案
- Android 的学习计划20151022
- oc基础之类方法与对象方法的比较(一)