UE5のノードの一覧
UE5でブループリントを使ってゲーム制作するにはどんなノードがあるのかを知っておく必要がある。
そこで特に重要なノード一覧を作ってみたので、ぜひ確認してみてほしい。
UE5の重要ノードの一覧目次
イベント系ノード計算系ノード
基本ノード
条件分岐系ノード
アクタ操作ノード
その他の重要ノード
目次にもどる
イベント系ノード
後続のノードを様々なタイミングで実行できるイベント系ノードを紹介していく。
Event BeginPlay
ゲームを開始した際やアクターが生成された際に1回だけ後続のノードを実行することができる。
スタート画面表示やキャラのリスポーン処理など様々な場面で使用することになるノードだ。
Event Tick
後続のノードを1フレームに1回実行するイベント系ノード。
60FPSのゲームなら、イベントTickで1秒間に60回の実行処理が行われることになる。
例えば、敵の位置をリアルタイムでミニマップに表示したい場合などに、このノードを使えば敵の位置情報を毎フレームとってくることができる。
使用頻度の高いノードだが、重い処理を入れるとそれが毎フレーム行われるため、重すぎてゲームがプレイできなくなってしまうこともあるので注意しよう。
Keyboard Events
キーが押された時に後続のノードの処理を行う。
Pressed出力の後につないだノードはキーが押された時に実行される。
Released出力の後につないだノードはキーが離された時に実行される。
キーボードのFキーなどはもちろん、数字キーやマウスボタン左・右も指定可能。
操作処理を行うのに欠かせないノードだ。
検索したい時は押す処理がしたいキーを入力した後、keyboardと入力すれば出てくる(Fキーが押したいならF keyboardと検索する)。
目次にもどる計算系ノード
計算系ノードは様々な場面で必須級と言えるので紹介していく。
Add
Addは加算を行うノードだ。
上の入力値と下の入力値を足した値を出力することができる。
例えば、主人公の攻撃力に剣の攻撃力を足すという場合に使うことができる。
Subtract
Subtractは減算を行うノードだ。
上の入力値から下の入力値を引いた値を出力する。
例えば、敵のHPから与えるダメージを引いて残りのHPを出すという場合に使える。
Multiply
Multiplyは乗算(掛け算)を行えるノードだ。
上の入力値と下の入力値を掛け算した値を出力できる。
Divide
Divideは除算(割り算)を行えるノードだ。
上の入力値を下の入力値を割った値を出力することができる。
IncrementInt
IncrementIntは1を足した値を変数に代入できるノードだ。
Add(加算する)でも同じ操作は可能だが、1固定で足し算したい場合は楽なのでこちらを使うことが多い。
RandomIntegerinRange
RandomIntegerinRangeはランダムな整数(Integer型の値)を作成することが可能。。
Minに入力された値とMaxに入力された値の間でランダムな整数を作成し出力することができる。
例えば攻撃した時に確率でクリティカルするなどの処理を作る時に役立つ。
RandomFloatinRange
RandomFloatinRangeはランダムな小数点を含む数(Float型の値)を作成することが可能。
Minに入力された値とMaxに入力された値の間でランダムな値を作成し出力することができる。
RandomBool
RandomBoolはtrueまたはfalseをランダムで生成可能(trueとなる可能性は50%)。
目次にもどる基本ノード
使用頻度の高い処理ノードを紹介していく。
PrintString
ビューポート左上にテキスト表示が可能なノード。
作ったノード群がちゃんと処理されているかテストするのに使われることが多い。
Append
上に入力したテキストと下に入力したテキストを結合して出力することができる。
NPCキャラとの会話でプレイヤー名と話し言葉を合体させるのに使うことが多い。
Delay
Delayは処理されるのを入力した秒数だけ遅らせることが可能。
例えば、剣を振った後、Delayで遅らせた時間の後に炎を出すといったような処理を作れる。
SetGamePaused
ゲームを一時停止させることができるノード。
例えば、メニュー画面を開く際に戦闘を停止させるといった用途で使われる。
For Loop
For Loopは処理を繰り返すノードの一つだ。
First IndexとLast indexを指定可能。最初はFirst Indexの値からカウントを開始する。1回処理を終える度にIndexの数値が1ずつ加算されていく。Indexの値がLast Indexに達したら繰り返し処理を終了する。
First Indexに0、Last Indexに2を入力した場合、後続処理を3回繰り返すことになる(indexが0,1,2の3回)。
同じノードを連続で書いてもFor Loopと同様の処理を行うことは可能。だが何十回も同じ処理を行う場合もあり見づらくなってしまう。同じような処理を何度も行う場合にはFor Loopやその他のLoopノードを使うようにしたい。
目次にもどる条件分岐系ノード
条件によって後続の処理を分けることができるノードを紹介していく。
Branch
BranchはCondition(Boolean系の値)にチェックが入っている(つまりtrue)ならTrue側の出力が実行され、チェックが入っていないならfalse側の処理が実行される。
例えば100点手に入れたら勝ちのゲームで100点入ったかどうかの判断をしたりするのに使う。使用場面が多いノードだ。
Equal
Equalは入力された上の値と下の値を比較して同値であればtrueを出力する。同値でなかった場合はfalseを出力する。
前述したBranchと一緒に使うことが多い。Equal→Branchのようにつなげて使う。
NotEqual
NotEqualは入力された上の値と下の値を比較し異なる値であればtrueを出力する。同値だった場合はfalseを出力する。
前述したEqualと逆のパターン。
Greater
Greaterは入力された下の値より上の値が大きい場合はtrueを出力する。大きくなかった場合はfalseを出力する。
Less
Lessは入力された下の値より上の値が小さい場合はtrueを出力する。小さくなかった場合はfalseを出力する。
GreaterEqual
GreaterEqualは入力された上の値が下の値以上の場合はtrueを出力する。そうでなかった場合はfalseを出力する。
Greaterと異なるのは同値でもtrueが出力される点。
LessEqual
LessEqualは入力された上の値が下の値以下の場合はtrueを出力する。そうでなかった場合はfalseを出力する。
Lessと異なるのは同値でもtrueが出力される点だ。
AND Boolean
全ての条件がtrueだった場合のみtrueを出力する。一つでもfalseがあったらfalseを出力する。
デフォルトでは2つのピンだが、Add pinの+マークを押すこで条件を増やすこともできる。
OR Boolean
条件のうち一つでもtrueだった場合はtrueを出力する。全てがfalseだったらfalseを出力する。
Add pinの+マークを押すことで条件を増やすこともできる。
目次にもどるアクタ操作ノード
アクタ(操作キャラ、Cube、壁などのゲームオブジェクト)を操作できるノードを紹介していく。
SetActorLocation
New Locationに入力したX・Y・Zの座標へ瞬時にターゲットを移動させることができるノード。
ターゲットがselfとなっている場合にはこのノードがあるブループリントクラスのアクタが移動する。
SetActorRotation
New Rotationに入力したX・Y・Zの角度へ瞬時にターゲットを回転させることができるノード。
ターゲットがselfとなっているなら、このノードがあるブループリントクラスのアクタが回転する。
SetActorScale3D
SetActorScale3Dは瞬時にターゲットを入力したX・Y・Zの大きさにすることができるノード。
ターゲットがselfとなっているなら、このノードがあるブループリントクラスのアクタのサイズが変更される。
AddActorLocalOffset
AddActorLocalOffsetはローカルトランスフォームでDelta Locationに入力されたX,Y,Zの値だけアクタを移動させることができる。
ローカルトランスフォームとは自身(ブループリントクラス)を中心(原点0)として見た場合のこと。
例えば、前述したEvent tick(毎フレーム後続ノード処理)と組み合わせれば毎フレーム少しずつ移動させることで徐々に移動する処理を実装することができる。
AddActorWorldOffset
AddActorWorldOffsetはワールドトランスフォームでDelta Locationに入力されたX,Y,Zの値だけアクタを移動させることができる。
ワールドトランスフォームとはレベルのX,Y,Zを基準にした場合のこと
例えば、アクタがどこに向いていようが任意の方向へ移動させたい場合に使用するといい。
AddActorLocalRotation
AddActorLocalRotationはローカルトランスフォームでDelta Rotationに入力されたX,Y,Zの値だけアクタを回転させることができる。
操作キャラの向き変更など様々な場面で使用する機会が多い。
GetActorLocation
GetActorLocationはアクタの位置を取得することができるノード。
ターゲットがselfの場合はこのノードがあるブループリントクラスの位置を取得する。
例えば操作キャラと敵の位置を取得して、そこから距離を計算するといった使い方ができる。使用頻度は非常に高い。
DestroyActor
DestroyActorはアクタを削除することができる。
例えば、敵を倒したり、落ちていたアイテムを拾った場合に使用することが多い。
SpawnActorfromClass
SpawnActorfromClassはアクタを生成することができる。
生成するブループリントクラスと生成するトランスフォーム(ワールドでの位置・回転・大きさ)を指定して生成を行うことができる。
目次にもどるその他の重要ノード
重要ではあるが説明が長くなるノードは別記事に詳しくまとめた。
Cast To他のブループリントクラスの参照を可能にする。
Play Montage一時的なアニメーションの表示ができる。