📏

User ToolBox(UTB)とは?

2023/10/12に公開

User ToolBox(UTB)について

Unreal EngineのForumを毎日確認するのが日課になっています。
User ToolBox(UTB)」という気になる機能がありました。
詳しい手順は以下のURLに書かれているので、「EUWを拡張できるのか?」という観点で触ってみることにしました。

https://dev.epicgames.com/community/learning/tutorials/Ln1K/unreal-engine-user-toolbox-5-2

UTBを有効にする

UTBを使用するために以下のPluginを有効にし、プロジェクトを再起動します。
5.3.1の段階でExperimental(実験的)扱いになります。

  • UserToolboxBasicCommand (デフォルトのコマンドが含まれます)
  • UserToolboxCode (フレームワークを含む)


Pluginsを開く


UserToolBoxで検索してPluginを有効にしプロジェクトを再起動する

Pluginを有効にすると「User Tool Box」の項目が増えます。

User ToolBox Tabを作成する

「User ToolBox Tab」を作成します。
名前は「UTBT_TabSample」に設定します。

「User ToolBox Tab」は「Windows -> User ToolBox -> DefaultUserToolBox」から表示できます。

Defaultでは「DefaultUserToolBox」になっていますが、「Tab Details」の「Name」で名前を変更できます。

Tabの中身を編集したい場合は以下の手順でエディタを開きます。

  • ContentsBrowser内のAssetをダブルクリック
  • 表示したTabの右上のアイコンをクリック

【サンプル機能】Execute ConsoleCommandを実行する

ScreenShotを撮影するコマンド「HighResShot」を実行できるボタンを作成します。

FullHD(1920x1080)でスクリーンショットを撮影するコマンドは以下になります。

HighResShot 1920x1080

Editorの下部にある「cmd」のテキストボックスにコマンドを入力するとスクリーンショットが撮影できます。

Sectionsに「Command」というセクションを追加します。
Renameは右クリックメニューから選択できます。

「Command List」から「Engine Command」をDrag&Dropして追加します。

「Command Details」で実行するコマンドを設定します。

UTBのタブにボタンが追加されます。
ボタンをクリックすると設定したコマンドが実行され、スクリーンショットが撮影されます。
PIE時にもコマンドを実行できます。
普段よく使用しているコマンドは登録しておくと便利です。

【サンプル機能】Editor Utility Widget(EUW)を表示する

UTBからEUWを表示するボタンを追加します。

表示できることを確認するためのEUWを作成する

UTBから表示するためのEUWを作成します。

表示したことを分かりやすくするためのTextウィジェットを配置します。

EUWを開くCommandを追加するための「User ToolBox Command Blueprint」を作成する

「User ToolBox Command Blueprint」を作成します。
名前を「UTBBP_OpenEUW」に設定します。

Functionから「Command」をOverrideします。

EUWを開く処理を実装します。

「Spawn and Register Tab」ノードの「In Blueprint」に接続する変数を追加します。
変数名を「EUW」に設定します。
変数を追加すると「User ToolBox Tab」側で設定できる項目として扱われます。

「Compile」ボタンをクリックします。

EUWを開くCommandを追加する

「UTBT_TabSample」を開きます。

EUWを表示するセクションを追加し、「Open EUW」にリネームします。

EUWを開くには「Command List」から作成した「User ToolBox Command Blueprint」の名前「UTBBP_OpenEUW」をDrag&Dropして追加します。

開きたいEUWのアセット名を「EUW」に追加します。

ボタンをクリックすると設定したEUWを開けます。

まとめ

EUWでもできることをより簡単に実装できるのが「User ToolBox」のようです。

  • 用意されている機能があれば、EUWで実装しなくてもプロパティの設定で実行できる
  • 自分好みのIDEを作れる
  • コマンドをカスタマイズできる

デメリットは以下のことが挙げられます。

  • まだ情報が世の中に存在しない
  • パラメーターで値を動的に変えるならEUWの方がツールを作りやすい

EUWとUTBを組み合わせると強いツールが作れそうです。

Discussion