はじめに
AssetGraphの存在を最近知ったが、ここ数年の情報が少なく導入時に少し躓いたので、公式マニュアルに記載がない部分を中心に記録を残す。
AssetGraphとは
- ノードベースのGUIツールでアセットの管理を自動化することができる。
- オープンソース化されているが2020年から更新が止まっている。(最新版Unityでの導入方法がドキュメントに書いていない。)
- 指定した条件のアセットがプロジェクトに追加されたタイミングや任意のタイミングで処理を実行できる。
- アセットを監視し、変化したら処理を行うこともできる。
導入方法
パッケージマネージャのadd packege from git url
にhttps://github.com/Unity-Technologies/AssetGraph.git
を入力すると導入することができる。
※2022年9月17日時点でVersion 1.7.2-preview
が最新で正式リリースはされていない…
詳しい使用方法
以下のサイトが分かりやすくおススメです。
AssetGraphファイルを作成する
window > AssetGraph > OpenGraphEditor
から新規作成することができる。
簡単な使用例:AssetGraphを使ってTextureの自動/手動設定変更をしてみる
1.指定ディレクトリに格納されたら設定を変更する。
- 自動設定対象のアセットと対象の設定用ノード
LoadFromDictionary
作成し、対象のディレクトリを設定する。
- ノード選択状態でInspectorウィンドウで対象のディレクトリが設定できる。
-
Respond To Asset Change
のチェックボックスをONにすることで対象ディレクトリにAssetが格納されたら自動で処理を実行できるようになる。
-
2.OverWriteImportSettingsノードを作成し、ImporterTypeをTextureに設定する。
3.Inspectorウィンドウの表示内容がTextureインポート設定用の内容に切り替わるので、任意の値に設定する。今回はTextureTypeをSprite、DefaultMaxSizeを512に設定している。
4.右上のExecuteボタンを押す、またはアセットを対象ディレクトリに格納すると、Texturesディレクトリの中の画像ファイルが512サイズの2DSpriteに変更される。
とにかく画像をインポートしたときに処理を実行したい場合
LastImportedItemsNodeノード+SplitByFilterノードを組み合わせるだけで簡単に設定できます。