コガネブログ

平日更新を目標に Unity や C#、Visual Studio、ReSharper などのゲーム開発アレコレを書いていきます

【Unity】Unity 5.3 新機能「ISerializationCallbackReceiver」

Unity 5.3 から「UnityEngine.ISerializationCallbackReceiver」が追加されました
このインターフェイスを実装することで
JsonUtilityでシリアライズした時やデシリアライズした時に呼び出される
コールバック関数を実装することができます

public class Character : ISerializationCallbackReceiver
{
    public void OnBeforeSerialize()
    {
        Debug.Log( "OnBeforeSerialize" );
    }

    public void OnAfterDeserialize()
    {
        Debug.Log( "OnAfterDeserialize" );
    }
}
var character = new Character();
var json = JsonUtility.ToJson( character );
character = JsonUtility.FromJson<Character>( json );

参考サイト様