5️⃣
【UE5】BlueprintでDelegateを利用したい
環境
- Unreal Engine 5.1.1
- Windows 11
目的
BlueprintでDelegateを利用して、処理実装を外部に任せたい。
方法
Event Dispatcher を利用することで、処理を外部に移譲することができます。
移譲側の実装
My Blueprintタブにある EVENT DISPATCHER
から通知側の追加ができます。
今回は TestEvent
という名前で追加しました。
引数の設定
Detailsタブの Inputs
右の+ボタンから、通知パラメータを追加できます。
今回は NewParam
という Boolean
型を追加します。
通知を送る
グラフ部分の右クリックメニューから Call XXX
を選択します。
今回の場合は Call TestEvent
となります。
通知ノードに対し、それを呼び出すノードをつなぎます。
実装側の実装
まず通知を送っているオブジェクトの参照を配置し、
そこからノードを引っ張って Assign XXX
という項目を選択します。
今回の場合は Assign TestEvent
となります。
選択すると、Bind Eventノードと、そこから呼び出されるイベントが
自動的に追加されます。
監視は開始時などに一度行えばよいので、 Begin Play
等で設定しておきましょう。
通知を受け取った際に行う処理は先ほど自動追加されたイベントに追加していきます。
準備完了
以上で準備完了です。
あとは、 Call XXX
が呼ばれるたびに、監視側のイベントが実行されるようになります。
今回の場合だと、右クリックを押すたびに、 New Param
に設定した True
がデバッグ表示されます。
Discussion