UE5:For Each Loopを知ろう!ゲーム開発

役割と目的
・配列(Array)内の全ての要素を1つずつ処理するためのループノード
・配列に格納されているすべてのデータに順番にアクセスし、処理を実行する
ノードの詳細
🔴入力ピン
ピン名 | 型 | 説明 |
Array | Array(任意の型) | ループの対象となる配列 |
Exec | 実行ピン | ループを開始する |
🔵出力ピン
ピン名 | 型 | 説明 |
LoopBody | 実行ピン | 各要素に対する処理を事項するためのピン |
Array Element | 任意の型 | 現在処理中の配列の要素 |
Array Index | int | 現在のループのインデックス(0から開始) |
Completed | 実行ピン | ループが最後の要素まで処理された後に実行される |
関連するノード
For Each Loop With Break
・途中でループを強制終了できるバージョン
例)特定のアイテムが見つかったらループを終了
補足情報
【大量のデータ処理に使う場合は注意】
・For Each Loopはすべての要素を処理するため、大量のデータがあると処理負荷が大きくなる
・不要な処理はBreakでループを途中終了することを考える
【配列の変更には要注意】
・ループ内でRemoveすると、インデックスがずれる問題が発生する
・逆順でループすると安全
まとめ
項目 | 内容 |
役割 | 配列のすべての要素を処理する |
出力 | Array Element(現在の要素)・Array Index(インデックス) |
応用 | For Each Loop With Breakで途中終了可能 |
注意点 | 大量のデータ処理に注意、消去時は逆順ループが安全 |
✅ゲーム開発ではアイテム管理・敵の行動処理・エフェクト管理など、さまざまな場面で活用できる!