⛹️
【UE5】EUWを使って外部からダメージを与えるデバッグ機能を作る
概要
この記事はUnreal Engine (UE) Advent Calendar 2024のシリーズ3の25日目の代理投稿記事となります。
今回は題名にある通り、EUWを使ったデバッグ機能についての記事となります。
想定してるイメージは以下となります。
やり方
以下の手順でBPやWidgetを作成していきます。
- HPバーのウィジェットを作成
- ダメージ識別用のインターフェースを作成
- HPバーのウィジェットをコンポーネントとして持ったアクターの作成
- ダメージ値設定用のSpinBoxとボタンを用意したEUWを作成
HPバーのウィジェットを作成
確認のため、CanvasPanelにProgressBarだけ設定したウィジェットを作成します。
BPの方は関数にダメージを食らったらPercentを変更するだけにします。
ダメージ識別用のインターフェースを作成
ダメージ識別用のインターフェースを作成し、ダメージのパーセントを受け取れるようにApply関数を作成します。
HPバーのウィジェットをコンポーネントとして持ったアクターの作成
Actorを作成し、簡易的なCubeと先ほど作成したWidgetを設定できるようにコンポーネントを追加します。
クラス設定で先程作成したダメージ識別用のインターフェースを実装します。
処理はダメージ値を受け取ったらHPバーを更新できるようにします。
ダメージ値設定用のSpinBoxとボタンを用意したEUWを作成
Widgetの構成は下記となります。
SpinBoxは数字だけ設定できると聞いたので採用してます。
ボタンが押されたときの処理は以下となります。
GetAllActorsOfClass
で全てのクラスを取得し、対象のインターフェースが実装されていたらダメージを与えるようにしています。
EUWを実行し、値を変更してボタンを押して冒頭のイメージ通りにダメージを与えられたら成功です。
終わりに
25日目の締めが短めで恐縮ですが記事は以上となります。
ここまで読んでいただきありがとうございました。
Discussion