LoginSignup
5
1

More than 1 year has passed since last update.

EditorUtilityWidgetを使用したツール制作について

Last updated at Posted at 2022-12-23

はじめに

この記事はUnreal Engine (UE) Advent Calendar 2022の25日目の記事になります。
お仕事でEditorUtilityWidgetを使用する事が増えてきたので、自分の復習もかねて記事に残しておこうと思います。
今までツール制作を行った事がなかったので、苦手意識みたいなものが少なからずありましたが、実際に触ってみると凄くユーザーライクで組み込みも非常に簡単でかつ短時間で終わるため、開発には非常に強力なツールだと思いました。

検証環境

Unreal Engine 5.1

EditorUtilityWidgetについて

PIEを実行しなくてもエディター上で動作するUI要素を簡単に追加する事が出来ます。
UnrealMotionGraphics(UMG)をベースにしている事もあり、WidgetやBlueprintsを触った事がある人なら非プログラマでも簡単に拡張する事が出来ます。
詳しくは公式リファレンスをご参照ください。

参考サイト

〇 こちらのロジカルビートさんのブログが初心者ライクで非常にわかりやすいです。
https://logicalbeat.jp/blog/5236/

〇 ぶっちゃけキンアジさんのブログを見るとだいたいの内容が理解できると思います。
https://kinnaji.com/tag/editorutilitywidget/

〇 少し凝った事を画像付きで解説されているのでオススメです。
https://anapurna.co.jp/ue4/641/

EditorUtilityWidgetの生成

右クリックからメニューを開き、「エディターユーティリティ → エディターユーティリティウィジェット」を選択
image.png

Widgetと同様にButtonを配置してみてください。
image.png

作成したEditorUtilityWidgetを右クリックし「エディターユーティリティウィジェットを実行」を選択
image.png

新規でウィンドウが表示され設定したUMGが表示されます。
image.png

コンテンツブラウザ上で選択しているStatticMeshの取得

EditorUtilityWidgetにTextを追加
image.png
「Get Selected Assets」を使用する事でコンテンツブラウザ上で選択しているアセットを取得する事が出来ます。
ボタンが押されたタイミングで選択しているAssetを取得
配列で取得できるため複数選択にも対応しています。この辺りは各自良い感じにしてください。
今回はボタンを押したら選択しているStaticMeshを取得できるようにしておきます。
image.png

後は取得したAssetを元に名前を表示させるなど、取得したアセットの情報をEditorUtilityWidgetに表示させてあげましょう
image.png
取得したStaticMeshを元にMaterilを変更したり、一部パラメータを書き換えたりとアセット編集を行う事が出来ます。
image.png

EditorUtilityWidgetでパラメータを変更し、セーブ → チェックアウトを自動化

選択したStaticMeshを適当にMaterialを書き換えてみる
image.png

画像のようにチェックアウトからセーブを一連の流れで実装する事が出来ます。
※ ソースコントロールに接続しておく必要があります。
image.png

今年のふりかえり

今年はツール年というぐらいに色々なツールを作ってきました。
EditorUtilityWidgetを使用する事も多く、今年はよりUnreal Engineを学ぶ事が出来たかなと思います。
ぜひ来年もよろしくお願いいたします。

5
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5
1