UE5で敵AIを作っていると、
「AIが動かない。」
という問題に一度は遭遇すると思います。
- 最初から棒立ちのまま動かない
- Behavior Treeは動いているのに移動しない
- 最初は正常なのに途中で止まる
- 攻撃範囲なのに攻撃しない
- 攻撃したあとにそのまま止まる
こういった症状は、一見するとすべて「AIが動かない」という同じ問題に見えます。
しかし、確認する場所は症状によって全く異なります。
この記事では、UE5でAIが動かないときに症状から確認する場所を切り分ける考え方を紹介します。
この記事で紹介するのは「設定方法」ではなく「調べ方」です。
原因を暗記するのではなく、「まずどこを見るべきか」を整理していきます。
AIが動かないケースは5つに分けられる
AIが動かないといっても、大きく分けると次の5パターンがあります。
- 全く動かない
- AIは動いているけど身体が動かない
- 途中で止まる
- 行動が実行されない
- 行動後に止まる
症状を整理するだけで、確認する場所をかなり絞ることができます。
① AIが全く動かない
症状
- 最初から棒立ち
- Behavior Treeも動いていない
この場合は、
AIそのものが起動しているか
を確認します。
最初に確認する場所
Auto Possess AI

AIが自動でControllerに制御される設定になっているか確認します。
AI Controller

AIControllerクラスが正しく設定されているか確認します。
Run Behavior Tree

Behavior Treeが実際に開始されているか確認します。
この3つのどこかに問題があると、
移動も攻撃も実行されません。
最初から全く動かない場合は、まずAIの起動条件を確認しましょう。
② AIは動いているけど身体が動かない
症状
- Behavior Treeは動いている
- Move Toも実行されている
- それでもキャラクターが動かない
この場合は、
キャラクターが移動できる状態か
を確認します。
最初に確認する場所
NavMesh

AIが移動可能な領域が配置されているか確認します。
UE5ではレベルビューで Pキー を押すと、緑色のNavMeshを表示できます。
Move To

Move Toの移動先が有効なActorやLocationになっているか確認します。
AIは動こうとしていても、
移動できる領域や移動先に問題があるとキャラクターは動けません。
AIは動いているけど身体が動かない場合は、移動処理を確認しましょう。
③ 途中で止まる
症状
- 最初は正常
- 途中から止まる
最初は正常だったということは、
起動処理には問題がありません。
この場合は、
途中で何が変わったのか
を考えます。
最初に確認する場所
NavMesh

AIやターゲットが移動可能範囲から外れていないか確認します。
ターゲット

Blackboardなどで保持している対象が正しく設定されているか確認します。
Decorator

Behavior Treeの条件が変化し、別ルートへ切り替わっていないか確認します。
このケースでは、
途中で変わった状態
に注目することがポイントです。
④ 行動が実行されない
症状
- 攻撃範囲なのに攻撃しない
- 同じ行動ばかり繰り返す
- 待機状態から変わらない
AIは移動しているのに、
行動だけ実行されない場合は、
AIの判断
を確認します。
最初に確認する場所
状態判定

攻撃条件など、状態を切り替える条件が正しいか確認します。
Blackboard

AIが判断に使用する情報が正しく更新されているか確認します。
Behavior Tree

どの条件にも一致せず、待機状態になっていないか確認します。
AIは動いているのに行動しない場合は、
判断条件を見る
ことがポイントです。
⑤ 行動後に止まる
症状
- 攻撃はする
- 行動したあと棒立ちになる
- 次の処理へ進まない
この場合は、
終了処理
を確認します。
最初に確認する場所
Task

Finish Executeが呼ばれているか確認します。
Animation

Animation終了後の処理が正しく実行されているか確認します。
AIはまだ行動中だと判断していると、
次の処理へ進めません。
行動後に止まる場合は、終了処理を見ることがポイントです。
AIが動かないときの確認フロー
今回紹介した内容をまとめると、

AIが動かないからといって、
Behavior Treeだけを見る、
NavMeshだけを見る、
という調べ方では原因が見つからないことがあります。
まず症状を整理して、その症状に応じた場所から確認する。
この考え方を持つだけでも、デバッグはかなり進めやすくなります。
まとめ
UE5でAIが動かないときは、
原因を一つずつ暗記する必要はありません。
まずは、
- 起動処理
- 移動処理
- 状態変化
- 判断条件
- 終了処理
という5つのフェーズのどこで問題が起きているのかを考えることが重要です。
今回紹介した内容は、AIデバッグの全体像です。
それぞれの項目については、今後さらに詳しく解説していく予定です。
関連動画・記事
📺 【UE5】敵AI、動いてるのにショボい理由|行動を増やしても自然にならないワケ

AIが「動く」だけではなく、「自然に見える」ための考え方を解説しています。
この記事が参考になった方は、YouTubeチャンネルの登録やブログのブックマークもぜひお願いします。
コメント