diff --git a/Assets/Scripts/Data/SaveLoadEntity.cs b/Assets/Scripts/Data/SaveLoadEntity.cs new file mode 100644 index 00000000..d6a71f80 --- /dev/null +++ b/Assets/Scripts/Data/SaveLoadEntity.cs @@ -0,0 +1,19 @@ +using UnityEngine; +using System.Collections.Generic; + + +namespace Octopus.Simulator.Networks +{ + public class SaveLoadEntity + { + public List modelInfos = new List(); + public CameraInfo cameraPositionInfo = new CameraInfo(); + } + + public class CameraInfo + { + public string position; + public string rotation; + } +} + diff --git a/Assets/Scripts/Data/SaveLoadEntity.cs.meta b/Assets/Scripts/Data/SaveLoadEntity.cs.meta new file mode 100644 index 00000000..bbc39dc6 --- /dev/null +++ b/Assets/Scripts/Data/SaveLoadEntity.cs.meta @@ -0,0 +1,2 @@ +fileFormatVersion: 2 +guid: f401d6150422e6d49b64c47f869c6a41 \ No newline at end of file diff --git a/Assets/WorkSpace/LWJ/SaveLoadmanager.cs b/Assets/WorkSpace/LWJ/SaveLoadmanager.cs index a7d4abf9..b40ada2e 100644 --- a/Assets/WorkSpace/LWJ/SaveLoadmanager.cs +++ b/Assets/WorkSpace/LWJ/SaveLoadmanager.cs @@ -133,7 +133,14 @@ namespace Octopus.Simulator.Networks saveInfos.Add(tmpSimulationModelInfo); } - string jsonObject = JsonConvert.SerializeObject(saveInfos, Formatting.Indented); + SaveLoadEntity saveInfo = new SaveLoadEntity(); + + saveInfo.modelInfos = saveInfos; + saveInfo.cameraPositionInfo.position = UnityEngine.Camera.main.transform.position.ToString(); + saveInfo.cameraPositionInfo.rotation = UnityEngine.Camera.main.transform.eulerAngles.ToString(); + + + string jsonObject = JsonConvert.SerializeObject(saveInfo, Formatting.Indented); var modelClass = new WebModelClass(); modelClass.logicId = int.Parse(WebParameters.config.logicId); @@ -188,8 +195,22 @@ namespace Octopus.Simulator.Networks public void Onclick_Load(string jsonData) { List loadInfos = new List(); + SaveLoadEntity loadEntity = new SaveLoadEntity(); - loadInfos = JsonConvert.DeserializeObject>(jsonData); + // ¸ðµç ÇÁ·ÎÁ§Æ®µéÀÌ Ä«¸Þ¶ó Á¤º¸¸¦ ÀúÀåÇϵµ·Ï º¯°æ µÈ ÈÄ¿¡´Â catch ¹®¸¸ ³²±â°í try ¹® »èÁ¦ + try + { + loadInfos = JsonConvert.DeserializeObject>(jsonData); + } + catch(JsonSerializationException e) + { + loadEntity = JsonConvert.DeserializeObject(jsonData); + + loadInfos = loadEntity.modelInfos; + UnityEngine.Camera.main.transform.position = ParseVector3(loadEntity.cameraPositionInfo.position); + UnityEngine.Camera.main.transform.eulerAngles = ParseVector3(loadEntity.cameraPositionInfo.rotation); + } + string resourcePath = "Library/LibraryPrefab";