以前紹介した「Excelでデータを管理して(中略)ワークフロー」に「助かりました!」の声があったのが嬉しかったので、それのソースコードを作成する部分を自動化した。(我ながら単純!!)
これで、すごく簡単にXLSファイルのデータをUnityに持ってくる事ができるようになった。
で、今回はソースコードオープンソースとして公開する事にした。
エディタ拡張をする程でも無い部分は、こういった機能を活用して欲しい。
一応アセットストアにも出そうと思う
使い方
- Unity-Excel-Importer-MakerのDownload Zipを選択してファイルをダウンロード。ダウロードしたファイルのAssets/Terasurwareフォルダをプロジェクトにインポートする。
- XLSファイルをD&Dでプロジェクトにインポートする。
残念ながらファイル名が日本語だったり、頭に数字が入っているファイルは使えない。注意。
- 先ほどインポートしたXLSファイルを選択し、右クリック>Create XLS Importerを選択する。
- XLSを解析してデータを注入するクラスを作るので、パラメータの型と名称を設定してCreateを選択。数値の初期値はDoubleとなっているので、必要な場合はIntとしておく。
- これでインポーターが作られるので、2でインポートしたファイルを右クリック>ReImportすれば、excelファイルの隣にScriptableObjectが生成される。
以降はxlsファイルの値を変更する度にScriptableObjectの値が変更される。
ファイルを移動させたい場合、移動させたい場所へScriptableObjectとxlsファイルを移動させ、再度インポーターを作れば移動できる事も確認した。
ちなみに変数名はヘッダー、値は2行目、クラス名はシート名から拝借する。そのシート名とヘッダーに日本語が入っていると正常に動作しないので注意。またインポーター名はxlsファイルから拝借しているので、これも日本語が使えない(インポーターをファイル毎に分けているのは、複数のxlsファイルをインポートするため)。
とりあえずノーコーディングでココまで出来る。
ツィート数が10回行ったらxlsxも対応するかも