【UE5】ブループリント関数を駆使して開発を加速!知っておくべき関数とは!?【ゲーム開発】
Tutorial Pure Function, Tutorial, UE, UE4, UE5, UnrealEngine, アンリアルエンジン, カスタムイベント, ゲームプログラミング, ゲーム開発, チュートリアル, ブループリント関数, ロジック構築, 関数, 関数の使い方関数(Function)は、処理をまとめて再利用可能にする仕組みです。
✅処理を整理し、効率よくブループリントを作成できる
✅何度も同じ処理を繰り返すときに便利
✅他のノードと分けて整理し、可読性を向上させる
可読性については、前回記事にまとめてますので、気になる方はこちらからご覧いただければと思います。
関数の基本
関数には、入力・処理・出力の3つの要素があります。
項目 | 説明 |
---|---|
入力(Input) | 関数に渡す値(例:キャラクターの速度、ダメージ量など) |
処理(内部ロジック) | 関数内で実行する計算やアクション |
出力(Output) | 処理の結果を関数の外に返す(例:計算結果や変更後の値など) |

関数のイベントグラフに移動して、新規関数ノードを選択します。
詳細タブへ移動し、インプットピンを追加してみました。
すると、新規関数ノードのアプトプットピンに、「New Param」が追加されたと思います。
追加されたインプットピンがアウトプットピンに表示されてるのはなぜ?
と思われる方もいらっしゃると思いますが大丈夫です。私も最初はそう思ってました。
関数のイベントグラフで完結するものもあるのですが、関数は基本的に呼び出して使うものになります。そのため、外部からの入力を受け取ったピンが次のノードに値を渡すために、アウトプットピンが追加されてます。

なので、ここで言っている「インプット」と「アウトプット」ピンは、関数を別のイベントグラフで呼び出したときのことを指しています。
こっちの画像で見るとインプットピンになるということです。
ちょっと最初はややこしやぁですよねw
※ちなみに、呼び出した関数のノードをダブルクリックすることで、その関数のイベントグラフに移動することができます。

次にアウトプットピンを作成してみました。
画像でいうところの、New Param1のピンになりますね!
出力したい値がある場合は、アウトプットピンを作成して、次のノードに渡してあげることができます。

先ほどのインプットのときと同じく、アウトプットのピンが作成されました。
これで、受け取った値から処理を受け取って、次のノードに渡すことができますね。

では、使う際のイメージがわきやすいように簡単な処理を組んでいきましょう!
BP_ThirdpersonCharacterを開きます。
関数を作成してインプットピンとアウトプットピンをそれぞれ1つずつ作成します。
作成できたら、型を「Float」に変更します。
次に流れてきた値に、10を足す処理を組んでください。

イベントグラフに移動し、画像のようにノードを組んでください。
▲処理の内容▲
Shiftを押すと変数(Test)の値に+10する!という処理になります。

ゲームをプレイしてみましょう!
Shiftを押下するごとに左上に10が表示されるかと思います。
これは結果として、Test(0)に10を足して出力されている!ということになります。
関数は一度作成すると使い回すことができますので、同じ処理を何度も作成する必要がないので、非常に便利ですね。
関数の種類
✅通常の関数
・その場で実行される一般的な関数
・Return Nodeを使って値を返す

✅ピュア関数(Pure Function)
・状態を変更しない(外部の変数を変更しない)
・再計算のみを行う(例:加算・減算・角度計算など)
・ノードの出力が直接使える

✅カスタムイベントとの違い
種類 | 実行可能か | 戻り値 | 目的 |
---|---|---|---|
関数 | 可能 | あり | 計算処理などをまとめる |
カスタムイベント | 可能 | なし | アクションやフロー制御 |
ピュア関数 | 実行フローなし | あり | 計算結果のみを取得 |
まとめ
・関数は処理をまとめて再利用する仕組み
・入力、処理、出力を整理して使う
・カスタムイベントとは異なり、値を返せる
・ピュア関数は計算だけを行い、フローを持たない
・ゲームのダメージ計算やインベントリ管理などに活用できる
YouTube