CreateEvent ノードを使って、関数をイベントとして指定できるようにする

More than 3 years have passed since last update.

イベントディスパッチャーや Set Timer by Event ノードなどで引数として「イベント」を指定することがあります。

UE4 公式のドキュメントでは、「カスタムイベントノードを作ってイベントを指定する方法」が書かれていますが、これ以外にも「CreateEvent ノードを使って、関数をイベントとして指定する方法」があります。


CreateEvent ノードを使う

CreateEvent ノードはブループリントエディタの右クリックメニューから作ることができます。CreateEvent ノードを作ると、以下のように何も指定できないノードができます。

UE4_CreateEvent_01.jpg

これを右側にある Set Timer by Event ノードに繋げると……

UE4_CreateEvent_02.jpg

この通り、関数を選択できるようになります。

選択できる関数は、接続先のノードの仕様によって異なります。

例えば、この Set Timer by Event ノードの場合は、


  • 引数なし

  • 戻り値なし

の関数が選択できます。

(「戻り値あり」の関数も選択できますが、コンパイルすると警告が表示されますので、選択しないほうがいいです。)


CreateEvent ノードを使うメリット

CreateEvent ノードを使うことで、以下の様なメリットがあります。


  • イベントグラフ以外で引数にイベントを指定するノードが書けるようになる。

  • ノードの整理がしやすくなる。

  • 関数名のリネームがしやすくなる。

    (Set Timer by Function Name ノードのように関数名を文字列で指定する場合、関数名は自動でリネームされない。)