もくじ
基本
1.はじめに(Getting Started) ←今ここ
応用
4.Prefabなどゲーム内で使用するオブジェクトを設定する
トラブルシューティング
よくある質問、困ったときには(随時追加予定)
Ananke Csv Masterとは?
AnankeCsvMasterはゲーム開発などで使用されるマスターデータを簡単に作成するためのUnityエディタ拡張です。
敵味方のパラメータは経験値テーブルなど、ゲーム中で不変のデータを保持するためにUnityではScriptableObjectが用いられる事が多いですが、これらを手動で作成するのは地味に大変です。
AnankeCsvMasterはユーザが設定した定義情報を元に、ScriptableObjectのクラスとデータのインポータの自動生成を行い、開発者の作業の効率化をサポートします。
Getting Started
Untiyは2022.3以上です。
自分で試したところ2021.3ではUIToolKitのTreeViewとMultiColumnListViewの参照エラーが発生していたので、何らかの手段を講じる必要があるかと思います。
Boothから購入いただいた場合、Ananke Csv Masterの購入サイトからは下記がダウンロードできるようになっています。
・AnankeCsvMaster.unitypackage
・AnankeCsvMaster_WithSample.unitypackage
WithSampleの方にはこちらで設定した使用例があらかじめ設定されています。使い方や設定内容がわからないときなどにご参照ください。
これをベースに流用いただいても問題ありません。
パッケージをインストールすると上部のメニューから
Tools > CatHut > AnankeCsvMasterが表示されるようになっているはずです。
問題なく表示されていればインポートは完了となります。
もし表示されていないようなら、Consoleからエラーの内容を確認してみてください。
一度Unityを再起動してみるのも有効かもしれません。
本記事へのコメントかTwitterへご返信いただければ可能な範囲で対応いたします。
初期設定
正常にインポートできていることが確認できたら初期設定を行います。
Tools > CatHut > AnankeCsvMaster > Settingsから設定画面を開きます。
このような画面が開くのでこちらを設定していきます。
パスは基本的にどこでもよいのですが、一部ゲーム内で参照されるものとEditorに参照されるものがあるので、その点だけご注意ください。
オススメの設定も後述いたします。
1.Definision Path
マスターデータの定義情報を保存するフォルダです。
データやTableの定義情報は全てここに保存されます。
2.Data Paths
ScriptableObjectとして保存するデータ情報の格納場所を指定します。
複数箇所設定できるようになっていますが、1箇所だけの指定でも問題ありません。
3.ScriptableObject Instance Path
ScriptableObjectのインスタンスを出力する場所を指定します。
DataPath内のCSVをImportした結果がここに格納されます。
ゲーム内に使用するデータなので、Editorフォルダ外に指定する必要があります。(必須要件)
4.ScriptableObject Class Path
ScriptableObjectのクラス定義(.csファイル)を格納する場所です。
ユーザが定義した情報に従って自動生成されます。
これもゲーム内に使用するScriptなので、Editorフォルダ外に指定する必要があります。(必須要件)
5.Importer Path
CSVに書き込んだデータを読み取るためのImporterを出力する場所です。
こちらも、ユーザが定義した情報に従って自動生成されます。
ImporterはEditor機能となるため、前述の2つとは異なりEditorフォルダ内を指定する必要があります。(必須要件)
オススメのデータ構造
必須ではありませんが、こんな感じがよいかなという例です。各プロジェクトに合わせて調整してください。
前述の必須要件だけ守ってあれば基本的には自由な場所でOKです。
Assets
├ MasterData
│ ├ Definitions
│ ├ Data
│ │ ├ バージョン名等1/Csv
│ │ └ バージョン名等2/Csv
│ └ ScriptableObjectInstance
└ Scripts
├CreatedScriptableObject
└ Editor/CreatedImporter
ここまでの設定が終われば使用準備完了です。
次からデータ構造を作成していきます。
コメント