[Departure from the Void] マスターデータのシリアライザ
一昨日に紹介した以下クラス図のクラスを黙々と実装しています。
今日はこれらのうち、左側のIMasterSerializerとJsonSerializerをサクッと作りました。
IMasterSerializer
JsonSerializer
ほぼクラス図のままです。
IMasterSerializerはシリアライザのインタフェースクラスでこれを継承したJsonSerializerがJSON用シリアライザです。
JSONのシリアライズ/デシリアライズには、Unity標準のシリアライザを用いました。
APIを一つ叩くだけで良いので非常に楽ですね。
シリアライズされたデータはファイルへの保存も考慮してバイナリ形式を表すbyte[]で返すようにしました。
後に実装するMsgPackSerializerに差し替え可能にするためです。
意外とあっさりと実装したシリアライザですが、このシリアライズ用データを作るためのツール作成がやや面倒です。
このツールが完成すれば、ゲームのレベルデザインとこのマスターデータ化がかなり楽になりそうです。