資源描述:
《如何讓Unity自動保存場景.docx》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫。
1、學(xué)IT技能上我學(xué)院網(wǎng)woxueyuan.com如何讓Unity自動保存場景?我們在Unity開發(fā)過程中會發(fā)現(xiàn)總是會有自動崩潰的bug,而且每次崩潰可能因為沒有保存項目,所以Hierarchy視圖游戲?qū)ο笈c相關(guān)游戲資源會丟失,這個時候你就需要通過自動保存來保證你的項目進度不會丟失了。如何在Untiy中實現(xiàn)自動保存場景呢,我們來看一下教程。usingUnityEngine;usingUnityEditor;usingSystem;publicclassAutoSave:EditorWindow{privateboolautoSaveScene=true;
2、privateboolshowMessage=true;privateboolisStarted=false;privateintintervalScene;privateDateTimelastSaveTimeScene=DateTime.Now;privatestringprojectPath=Application.dataPath;privatestringscenePath;Unity3D
3、Cocos
4、php
5、HTML5
6、Java
7、ios
8、Android
9、C#
10、AS3
11、UI設(shè)計
12、原畫設(shè)計
13、動漫美術(shù)
14、游戲策劃學(xué)IT技能上我學(xué)院網(wǎng)woxueyu
15、an.com[MenuItem("Window/AutoSave")]staticvoidInit(){AutoSavesaveWindow=(AutoSave)EditorWindow.GetWindow(typeof(AutoSave));saveWindow.Show();}voidOnGUI(){GUILayout.Label("Info:",EditorStyles.boldLabel);EditorGUILayout.LabelField("Savingto:",""+projectPath);EditorGUILayout.LabelF
16、ield("Savingscene:",""+scenePath);GUILayout.Label("Options:",EditorStyles.boldLabel);autoSaveScene=EditorGUILayout.BeginToggleGroup("Autosave",autoSaveScene);intervalScene=EditorGUILayout.IntSlider("Interval(minutes)",intervalScene,1,10);if(isStarted){EditorGUILayout.LabelField
17、("Lastsave:",""+lastSaveTimeScene);Unity3D
18、Cocos
19、php
20、HTML5
21、Java
22、ios
23、Android
24、C#
25、AS3
26、UI設(shè)計
27、原畫設(shè)計
28、動漫美術(shù)
29、游戲策劃學(xué)IT技能上我學(xué)院網(wǎng)woxueyuan.com}EditorGUILayout.EndToggleGroup();showMessage=EditorGUILayout.BeginToggleGroup("ShowMessage",showMessage);EditorGUILayout.EndToggleGroup();}voidUpdate(){
30、scenePath=EditorApplication.currentScene;if(autoSaveScene){if(DateTime.Now.Minute>=(lastSaveTimeScene.Minute+intervalScene)
31、
32、DateTime.Now.Minute==59&&DateTime.Now.Second==59){saveScene();}}else{isStarted=false;}Unity3D
33、Cocos
34、php
35、HTML5
36、Java
37、ios
38、Android
39、C#
40、AS3
41、UI設(shè)計
42、原畫設(shè)計
43、動漫美術(shù)
44、游戲策劃
45、學(xué)IT技能上我學(xué)院網(wǎng)woxueyuan.com}voidsaveScene(){EditorApplication.SaveScene(scenePath);lastSaveTimeScene=DateTime.Now;isStarted=true;if(showMessage){Debug.Log("AutoSavesaved:"+scenePath+"on"+lastSaveTimeScene);}AutoSaverepaintSaveWindow=(AutoSave)EditorWindow.GetWindow(typeof(AutoSave)
46、);repaintSaveWindow.Repaint();}}因為這個編輯窗口必須在激活狀態(tài),所以你可以把