Open2
UnityでJSON
本家UnityのJSONUtilityはルートが配列だとパースできないので、Json.NETを使うのが鉄板。
ただし、Json.NETはVector3
等を扱えないのだが、フォークしてあるやつでパースするとよしなにやってくれた。
インストールはともにOpenUPM経由でやると楽。
BestHTTP2のSocket.IOではMessagePackを使うと楽
BestHTTP2のSocket.IOのデフォルトパーサーはLitJSON。Vector3等がパースできずエラーになる。
手間はあるがパーサーをMessagePackに変更すると、そのへんもパースしてくれるのでかなり楽になる。
Socket.ioサーバー側
socket.io-msgpack-parser
をインストールして、new するときにparserとして指定する
Unity側
_manager = new SocketManager(new Uri(_socketURL), options);
_manager.Parser = new MsgPackParser();