
Photo by
chiyoizmo
【Unity】Inspector上で二次元リストっぽいものを扱うための小技
変数に[SerializeField]やpublicを付けるとInspector上でいろいろイジれるようになる、常識ですね。
しかし、二次元リストを使おうとしてもInspectorには何も表示されないんです。
[SerializeField]
private List<List<int>> list = new List<List<int>>();
Inspector上でどうしても二次元リストを使いたい時に自分がやってる苦肉の策を紹介しときます。
多分もっといい方法はあると思います。
ほんへ
結論から言うと、List型変数をもつクラスのリストを作ってしまえばいいんです。
[SerializeField]
private List<aaaa> list = new List<aaaa>();
[System.Serializable]
class aaaa
{
public List<int> iii = new List<int>();
}
int型のリスト「iii」を持つクラス「aaaa」のリストを作ることで、擬似的に二次元リストを作れます。
なお使う場合は以下のようにします。
int uu = list[0].iii[1]; //この場合入るのは1
おわり
そもそも二次元リストをボコスカ使ってる人って自分以外にいるんですかね?
そんなに難しくないんで使ってみましょうね。