VVVVでオリジナルソフトの設定メニューを作り直す3

VVVVでJSONファイルを読み込んで値を取り出そうとすると、結局はxml形式に変換されることになる。そうなると変更を保存するにはxmlで書き出すことになり、最初からxmlでやったほうが早いよね、になった。
でもやっぱりJSONでやりたいので力業でパッチ組んで読み込んでみた。

テキストデータからゴリ押しでパース
サブパッチ(モジュール)にしてレイヤーを追う

ただこの状態だとインデントや改行がちゃんときれいに作られたJSONファイルじゃないとうまく読み込めない。例えば

{
“カメラ1”: {
“Point1”: [-0.50, 0.399],
“Point2”: [-0.51, 0.399],
“Point3”: [-0.52, 0.399],
“Point4”: [-0.53, 0.399],
“歪み補正”: “入”
},
“感度”: {
“感度”: 0.1
}
}

↑これは大丈夫だけど

{
“カメラ1”: {“Point1”: [-0.50, 0.399], “Point2”: [-0.51, 0.399], “Point3”: [-0.52, 0.399], “Point4”: [-0.53, 0.399],
“歪み補正”: “入”
},
“感度”: {“感度”: 0.1}
}

↑こんな感じで改行がなかったり、一行に複数データがまとまってしまっていたりするようなものには対応できない

構成を守ればいいだから使えないわけではないけれど、どうせならどんな状態でも対応できる形が望ましい。
今後余裕と気力があれば改良版を作りたいと思う。Spread分けを改行じゃなく「{」でやって、「Find」ノードでポジション出してそのあたりをこねくり回すか、C#のプラグインで作るか。C#わからないんですけどね。一度やろうとしてSystem.Text.Jsonが見つからないって言われてNugetでインストールしろとかどうとかで、めんどくなってやめた。気が向けば再チャレンジします。

コメント

タイトルとURLをコピーしました