public static string SerializeUnityObject(Object target, ref List <Object> objectReferences) { #if !DONT_USE_ODIN_SERIALIZER if (ShouldUseJsonUtilityForTargetSerialization(target)) #endif { #if UNITY_EDITOR return(UnityEditor.EditorJsonUtility.ToJson(target)); #else return(JsonUtility.ToJson(target)); #endif } #if DONT_USE_ODIN_SERIALIZER var jsonString = JsonConvert.SerializeObject(target, InspectorPreferences.jsonSerializerSettings); #if DEV_MODE Debug.Log("Target Serialized with Json.NET:\n" + jsonString, target); #endif return(jsonString); #else byte[] byteData = null; UnitySerializationUtility.SerializeUnityObject(target, ref byteData, ref objectReferences, DataFormat.JSON, true); #if DEV_MODE Debug.Log("SerializeUnityObject: " + StringUtils.ToString(Encoding.UTF8.GetString(byteData))); #endif return(Encoding.UTF8.GetString(byteData)); #endif }
public static void SerializeUnityObject(Object target, ref byte[] bytes, ref List <Object> objectReferences) { #if !DONT_USE_ODIN_SERIALIZER if (ShouldUseJsonUtilityForTargetSerialization(target)) #endif { #if UNITY_EDITOR var jsonString = UnityEditor.EditorJsonUtility.ToJson(target); #else var jsonString = JsonUtility.ToJson(target); #endif bytes = Encoding.UTF8.GetBytes(jsonString); if (objectReferences == null) { objectReferences = new List <Object>(); } else { objectReferences.Clear(); } } #if !DONT_USE_ODIN_SERIALIZER UnitySerializationUtility.SerializeUnityObject(target, ref bytes, ref objectReferences, DataFormat.Binary, true); #endif }
public static byte[] SerializeObject <T>(T value, List <UnityEngine.Object> objectReferences) where T : UnityEngine.Object { var bytes = new byte[0]; UnitySerializationUtility.SerializeUnityObject(value, ref bytes, ref objectReferences, DataFormat.JSON); return(bytes); }
void ISerializationCallbackReceiver.OnBeforeSerialize() { using (var cachedContext = Cache <SerializationContext> .Claim()) { cachedContext.Value.Config.SerializationPolicy = SerializationPolicies.Everything; UnitySerializationUtility.SerializeUnityObject(this, ref _serializationData, serializeUnityFields: true, context: cachedContext.Value); } }
public void SaveData() { if (Application.isPlaying || isInstance) { return; } FixNullGraphInstace(); UnitySerializationUtility.SerializeUnityObject(this, ref this.serialization_data, true); }
public void SaveData() { if (Application.isPlaying) { return; } if (current_types == null || current_types.Count == 0) { current_types = default_types; } UnitySerializationUtility.SerializeUnityObject(this, ref this.serializationData, true); }
void ISerializationCallbackReceiver.OnBeforeSerialize() { if (Application.isEditor && !Application.isPlaying) { isSerializing = false; using (var cachedContext = Cache <SerializationContext> .Claim()) { cachedContext.Value.Config.SerializationPolicy = SerializationPolicies.Everything; UnitySerializationUtility.SerializeUnityObject(this, ref this.serializationData, serializeUnityFields: true, context: cachedContext.Value); } } }
public byte[] SerializeToBytes(DataFormat p_format, ref List <Object> p_references) { byte[] bytes = null; using (var cachedContext = Cache <SerializationContext> .Claim()) { cachedContext.Value.Config.SerializationPolicy = SerializationPolicies.Everything; UnitySerializationUtility.SerializeUnityObject(this, ref bytes, ref p_references, p_format, true, cachedContext.Value); } return(bytes); }
public void SaveData() { if (Application.isPlaying) { return; } if (graph && graph.graph) { CopyParameters(graph.graph); } UnitySerializationUtility.SerializeUnityObject(this, ref this.serialization_data, true); //Debug.Log("SaveData"); }
public static OdinSerializationData OdinSerialize <T>(this T value, ref OdinSerializationData data, DataFormat format = DataFormat.Binary) { try { var context = BeginOdinSerializationContext(); if (value is UnityObject uo) { UnitySerializationUtility.SerializeUnityObject(uo, ref data, true, context); } else { data.SerializedFormat = format; if (format == DataFormat.Binary) { var bytes = SerializationUtility.SerializeValue(value, format, out var unityObjects, context); data.SerializedBytes = bytes; data.ReferencedUnityObjects = unityObjects; } else if (format == DataFormat.JSON) { var bytes = SerializationUtility.SerializeValue(value, format, out var unityObjects, context); data.SerializedBytesString = Convert.ToBase64String(bytes); data.ReferencedUnityObjects = unityObjects; } else if (format == DataFormat.Nodes) { using (var writer = new SerializationNodeDataWriter(context)) { SerializationUtility.SerializeValue(writer, format, out var unityObjects, context); data.SerializationNodes = writer.Nodes; data.ReferencedUnityObjects = unityObjects; } } else { throw new UnexpectedEnumValueException <DataFormat>(format); } } EndOdinSerializationContext(context); return(data); } catch (Exception ex) { throw new SerializationException($"Serialization of '{value?.GetType().ToString() ?? "null"}' failed.", ex); } }
void ISerializationCallbackReceiver.OnBeforeSerialize() { //Debug.Log("OnBeforeSerialize"); #if UNITY_EDITOR if (DashEditorCore.EditorConfig.editingController != null && DashEditorCore.EditorConfig.editingGraph == this) { DashEditorCore.EditorConfig.editingController.ReserializeBound(); } else { GetNodesByType <SubGraphNode>().ForEach(n => n.ReserializeBound()); using (var cachedContext = OdinSerializer.Utilities.Cache <SerializationContext> .Claim()) { cachedContext.Value.Config.SerializationPolicy = SerializationPolicies.Everything; UnitySerializationUtility.SerializeUnityObject(this, ref _serializationData, serializeUnityFields: true, context: cachedContext.Value); } } #endif }
public static void SerializeUnityObject(Object target, ref byte[] bytes, ref List <Object> objectReferences) { if (ShouldUseJsonUtilityForTargetSerialization(target)) { #if UNITY_EDITOR var jsonString = UnityEditor.EditorJsonUtility.ToJson(target); #else var jsonString = JsonUtility.ToJson(target); #endif bytes = Encoding.UTF8.GetBytes(jsonString); if (objectReferences == null) { objectReferences = new List <Object>(); } else { objectReferences.Clear(); } } else { #if DONT_USE_ODIN_SERIALIZER var jsonString = JsonConvert.SerializeObject(target, InspectorPreferences.jsonSerializerSettings); #if DEV_MODE Debug.Log("Target Serialized with Json.NET:\n" + jsonString, target); #endif bytes = Encoding.UTF8.GetBytes(jsonString); if (objectReferences == null) { objectReferences = new List <Object>(); } else { objectReferences.Clear(); } #else UnitySerializationUtility.SerializeUnityObject(target, ref bytes, ref objectReferences, DataFormat.Binary, true); #endif } }
public static string SerializeUnityObject(Object target, ref List <Object> objectReferences) { #if !DONT_USE_ODIN_SERIALIZER if (ShouldUseJsonUtilityForTargetSerialization(target)) #endif { #if UNITY_EDITOR return(UnityEditor.EditorJsonUtility.ToJson(target)); #else return(JsonUtility.ToJson(target)); #endif } #if !DONT_USE_ODIN_SERIALIZER byte[] byteData = null; UnitySerializationUtility.SerializeUnityObject(target, ref byteData, ref objectReferences, DataFormat.JSON, true); #if DEV_MODE Debug.Log("SerializeUnityObject: " + StringUtils.ToString(Encoding.UTF8.GetString(byteData))); #endif return(Encoding.UTF8.GetString(byteData)); #endif }
public void OnBeforeSerialize() { UnitySerializationUtility.SerializeUnityObject(this, ref serializationData); }
protected override void OnBeforeSerialize() { UnitySerializationUtility.SerializeUnityObject(this, ref serializationData); base.OnBeforeSerialize(); }
void ISerializationCallbackReceiver.OnBeforeSerialize() { UnitySerializationUtility.SerializeUnityObject((UnityEngine.Object) this, ref this.serializationData, false, (SerializationContext)null); }
void ISerializationCallbackReceiver.OnBeforeSerialize() { this.OnBeforeSerialize(); UnitySerializationUtility.SerializeUnityObject(this, ref this.serializationData); }
void ISerializationCallbackReceiver.OnBeforeSerialize() { UnitySerializationUtility.SerializeUnityObject(this, ref serializationData); _backingUdonBehaviourDump = _udonSharpBackingUdonBehaviour; }