(動画チュートリアル関連) 関数とカスタム イベントの違いは何ですか?

チュートリアルでは、関数もカスタム イベントもよく出てきますが、その違いは何でしょうか?どちらも、何かを実行するための一連の処理を置けて、他のブループリントから呼び出すことができるように思われるのですが。

確かに、関数を呼び出すためのコールノードもカスタム イベントを呼び出すためのコール ノードも何らかの処理を行うための入り口であり、両方ともパラメータを渡すことができます。

下の画像のように Call Function (関数呼び出し) という項目に入っているように、区別しづらい面もあります。

100105-var_vs_event1.png

しかし、違いはあります。まず、関数には返り値 (Return Value) をもたせることができます。これはイベントにはできないことです。

もう一つ、イベントの処理の中には Delay ノードなど実行の時間を制御できるノードを置けますが、関数には置けません。(以前は関数にも置くことができましたが、今は仕様上置けません)。

関数は、呼び出すとすぐに実行結果が呼び出し元に帰るようになっています。