普段Unityで3Dモデルを撮影して楽しんでいます。撮影するにあたっていろんなツールや服、アクセサリーなどをUnitypackageからインポートしているのですが、たくさんインポートするとAssetフォルダがめちゃめちゃ汚くなってしまいます。そこでAssetフォルダを以下のように構成することにしました。
- M_モデル
- F_fbx
- V_vrm
- F_服
- F_fbx
- T_tex
- A_アクセサリ
- W_ワールド小物
- S_スクリプト
- Scene
- StreamingAssets
わかりやすくなりましたが、Unityプロジェクトをつくるたびにこれらのフォルダをつくるのは面倒です。そこで勉強がてらc#でUnityのエディター拡張をつくり、ボタンを押すと上記のフォルダが生成されるようにしてみました。
コード
using UnityEditor; using System.IO; public class SetFirstFolder : EditorWindow { [MenuItem("フォルダ生成/Vphoto用")] static void CreateFolder() { string[] folderName = { "M_モデル/F_fbx", "M_モデル/V_vrm", "F_服/F_fbx", "F_服/T_tex","A_アクセサリ", "W_ワールド小物", "S_スクリプト", "StreamiingAssets" }; for(int i = 0; i < 8; i++) { Directory.CreateDirectory("Assets/" + folderName[i]); AssetDatabase.ImportAsset("Assets/" + folderName[i]); } } }
string[] folderName = ~の部分を変えればお好みのフォルダ名で生成できると思います
使い方
上記のコードをメモ帳などにコピーして「createfolder.cs」などの名前でAsset直下に保存してください。
Asset直下のパスがわからない方は

プロジェクトビューの「Assets」を選択して右クリック>Show in Exploerをクリック。

エクスプローラーが開かれるのでAssetsをクリック。

赤い丸部分をクリックするか、Alt+Dでパスに移動してコピーします。

名前をつけて保存するときに同様に赤い丸部分をクリックするか、Alt+Dでパスに移動して、先ほどコピーしたパスを貼り付けてエンターを押して保存すると、Asset直下のパスにスクリプトを保存できます。

あとは上に追加されたフォルダ生成>Vphoto用をクリックするとフォルダが一気に生成されます!
参考
c#は書いたことなかったので下記とても参考になりました!

おまけ:指定パスにUnityパッケージを展開するツール
ふつう、UnitypackageをドラッグアンドドロップなどでインポートするとすべてAsset直下にインポートされてしまいます。今回のようにフォルダ分けしたいときには、以下のようなツールを使うのがおすすめ。

使い方もまとめたので、お役に立てば幸いです!
コメント