【UE5】EditorUtilityBlueprint系クラスについて

UE5 ではエディター内で実行可能なツールとして Editor Utility WidgetEditor Utility Blueprint があります。

Editor Utility Blueprint は作成時にクラスを選択できるのですが、今回はそのクラスについて1つずつ解説したいと思います。

 




Editor Utility Object

代表的なクラスの1つです。
Editor Utility Widget と同様にコンテンツブラウザ上でアセットを右クリックし、"Run Editor Utility Blueprint" を選択することで Runイベントに繋げた処理が実行されます。
Editor Utility Widget のようなGUIはありません。

 



Editor Utility Actor

Editor専用を想定されているアクターでレベル上に配置できます。

Receive Editor Input にチェックを入れるとデリゲートへのバインディングなどインプット周りのセッティングが自動で行われます。

他にも Run イベントが用意されていたりなどするのですが、基本的には通常のアクタークラスと変わりません。



Asset Action Utility

コンテンツブラウザ上でアセットに対して処理を実行できるメニューを追加できます。

アセットを作成、関数を追加し、Class Defaults からメニューを追加するアセットを設定します。(UE5.2 から Class Defaults で設定する形に変わりました。)

Supported Conditions を設定するとアセット名やアセットのパラメータを条件に実行できるアセットをさらに絞れます。
条件に一致しない場合は Failure Reason のテキストが表示されます。

 



Actor Action Utility

ビューポート上でアクターに対して処理を実行できるメニューを追加できます。

Asset Action Utility と同様の手順で、
アセットを作成、関数を追加し、Class Defaults からメニューを追加するアセットを設定します。(UE5.2 から Class Defaults で設定する形に変わりました。)





Editor Utility Task

以下のようなバックグランドで実行可能なタスクを作成できます。

BeginExecutionCancelRequested の関数をオーバーライドでき、それぞれタスク実行時とキャンセル時に呼ばれます。

以下の3つの関数が使えます。

タスクのキャンセル時に BeginExecution で実行中の処理は自動では止まらないため、Was Cancel Requested を活用しましょう。
また、タスクを終了させるために Finish Executing Task は必ず呼んであげる必要があります。

上の Gif では以下のように組んでいます。

画像のようにタスクを登録すると他の Editor Utility Blueprint, Widget から実行することができます。
Optional Parent Task を指定するとそのタスクが完了した後に実行されます。





Editor Utility Tool Menu Entry, Editor Utility Tool Menu Section

ツールバーに項目を追加できます。

使い方についてはこちらの記事で詳しく解説されています。
【UE4】【UE5】”真”Blueprintだけで、Editor上にメニューを追加する【★★★】 | キンアジのブログ

Editor Utility Actor Component

Actor Component を継承したクラスです。特別な機能はありません。

Editor Utility Camera

Camera Actor を継承したクラスです。特別な機能はありません。


UE Version : 5.2.0