GTMF2019にてPython / BlueprintによるUnreal Engineの自動化という内容で講演いたしました。
本記事はその中で紹介した実装例、命名規則に応じたアセットリネームのサンプル公開用記事です。
発表内容については以下のスライドをご覧ください。
[GTMF2019] Python / BlueprintによるUnreal Engineの自動化
https://www.slideshare.net/EpicGamesJapan/gtmf2019-python-blueprintunreal-engine/1
アセットに対して命名規則を設けるのは大規模開発では非常に重要になってきますが、大量のアセットの中から命名規則から外れたアセットを見つけて一つ一つ修正していくのは大変です。
そこで、UE4.22から追加されたEditor Utility WidgetとBlueprintを使って簡単な命名規則修正ツールを作ってみました。
##事前準備
検証バージョンはUE4.22です。
PluginのEditor Scripting Utilitiesを有効にしておく必要があります。
##Editor Utility Widgetによるアセットリネーム
実際に動作している様子がこちらになります。
以下にEditor Utility Widgetの.uassetをアップしてあります。
エクスプローラでProject\Content直下に配置してください。
https://epicgames.box.com/s/w58n23w0434m8k6fnlcluvzcc2aywzq6
アセットを右クリック>Run Editor Utility Widgetを押すと起動します。
リネームしたいアセットを選択した状態で、右下のRenameボタンを押すとリネーム処理が走ります。
テキストボックスに入力されているプレフィックスは、自分好みに変更してもその通りにリネームされます。
##リダイレクタについて
アセットリネームを行うとリダイレクタというものが生成されることがあります。
これはアセットの名前が変わることで他アセットなどからの参照が途切れないようにするために生成されるものです。
普段は見えない状態になっていますが、コンテンツブラウザのFilters > other Filters > Show Redirectorsにチェックを入れることで可視化されます。
そのままにしておくとリネームやフォルダ移動するごとにどんどん増えてややこしいことになってしまうので、リダイレクタは定期的に整理しておきましょう。
右クリックからFix Upで修正(リダイレクタを削除)することができます。
##参考
[UE4]エディタ上で動作するツール・エディタ拡張をUMGで簡単に作れる Editor Utility Widget について
https://qiita.com/EGJ-Kaz_Okada/items/9f530db3b53d0fde3f20
[UE4]Editor Utility Widgetでツール・エディタ拡張を作る際のUndo/Redoの実装方法について
https://qiita.com/EGJ-Kaz_Okada/items/985b98fb934d751f4f69