敵AIの基本ロジック|追尾・攻撃・退避の3パターンを解説

アクションゲームの作り方

敵AIを作りたい。でも、追尾や攻撃の実装が分からない。

多くの学生が最初に感じるのが、この疑問です。

実は、敵AIは、3つの基本パターンで構成されています。

この記事では、敵AIの基本ロジックとして、追尾・攻撃・退避の3パターンを解説します。

この記事でわかること

  • 追尾AIの実装方法
  • 攻撃AIの実装方法
  • 退避AIの実装方法
  • 3パターンの組み合わせ
ゲーム開発講師
ゲーム開発講師

敵AIは、3つの基本パターンで構成されています。まずは、それぞれの特徴を理解しましょう。

ゲーム制作をゼロから学びたいあなたへ
Unity入門の森を見る 初心者歓迎!動画×プロジェクト一式で本格ゲーム制作を学べる
ゲームを「遊ぶ側」から「作る側」へ

あなたのオリジナルゲーム、今年こそ完成させませんか?

RPG・アクション・ホラー…Unityで本格ゲームを作りたい人のための学習サイトです。

Unity入門の森|永久会員チケット

永久会員チケット|Unity入門の森

全講座ラインナップを見てみる

実際に完成するゲームを題材に、
ソースコード・素材・プロジェクト一式をすべて公開。
仕事や学校の合間の1〜2時間でも、
「写経→改造」で自分のゲームまで作りきれる環境です。

追尾AIの実装方法

追尾AI 実装方法

追尾AIは、プレイヤーを追いかけるAIです。

主な実装方法は次の通りです。

  • プレイヤーの位置を取得
  • プレイヤーへの方向を計算
  • 敵の向きを調整
  • 一定の速度で移動

これらを組み合わせることで、基本的な追尾AIができます。

毎フレーム、プレイヤーの位置との差を計算し、その方向へ移動させることで、常にプレイヤーを追い続ける動きになります。

攻撃AIの実装方法

攻撃AI 実装方法

攻撃AIは、プレイヤーに近づいたときに攻撃するAIです。

主な実装方法は次の通りです。

  • プレイヤーとの距離を計算
  • 一定距離以内なら攻撃
  • 攻撃のクールタイムを設定
  • 攻撃パターンを実装

これらを組み合わせることで、基本的な攻撃AIができます。

プレイヤーとの距離を常に確認し、一定の距離に入ったタイミングで攻撃処理を実行します。

この仕組みを入れると、敵はただ近づくだけでなく、タイミングを見て攻撃してくる“ゲームらしい動き”になります。

ゲーム開発講師
ゲーム開発講師

攻撃AIは、「近づいたかどうか」を条件にするだけで作れます。
まずは攻撃できる距離を1つ決めて、そこから調整していきましょう。

退避AIの実装方法

退避AI 実装方法

退避AIは、プレイヤーから離れるAIです。

主な実装方法は次の通りです。

  • プレイヤーとの距離を計算
  • 一定距離以内なら退避
  • プレイヤーと逆方向に移動
  • 退避時間を設定

これらを組み合わせることで、基本的な退避AIができます。

プレイヤーが近づきすぎた場合、一定の距離を保つように後退する処理を行います。

この動きを入れることで、敵は無理に突っ込まず、間合いを意識して立ち回るようになります。

追尾・攻撃・退避を組み合わせた行動パターン

3パターン 組み合わせ

3パターンの組み合わせは、次の通りです。

距離 行動 パターン 説明
遠い 追尾 追尾AI プレイヤーを追いかける
中程度 攻撃 攻撃AI プレイヤーを攻撃する
近い 退避 退避AI プレイヤーから離れる

距離に応じて行動を切り替えることで、敵はプレイヤーの動きに反応しながら立ち回るようになります。

遠いときは追尾し、攻め込むと攻撃、詰めすぎると距離を取る――

そんな手ごわい敵の動きを作れます。

敵AIをうまく動かすための実装ポイント

実装 ポイント

実装のポイントは、次の通りです。

  • 距離の閾値を設定する
    → 行動が頻繁に切り替わらないようにするため
  • 状態遷移を管理する
    → 今どの行動をしているか分からなくなるのを防ぐため
  • 各パターンの処理を分離する
    → 修正や調整をしやすくするため
  • パラメータを調整する
    → 敵の強さや性格を変えやすくするため

これらを意識するだけで、敵の動きが安定し、調整もしやすくなります。

距離の閾値を意識するだけで、行動の切り替えがぐっと安定します。

ゲーム制作をゼロから学びたいあなたへ
Unity入門の森を見る 初心者歓迎!動画×プロジェクト一式で本格ゲーム制作を学べる

初心者がつまづきやすい敵AI実装あるあると対策

敵AIはロジック自体はシンプルでも、実装方法によっては思った通りに動かず、原因が分からなくて手が止まってしまうことがあります。

ここでは、初心者が特につまづきやすいポイントと、その対策をコードサンプル付きで紹介します。

① 行動が切り替わりすぎて、敵がガタガタ動いてしまう

追尾と攻撃を「プレイヤーとの距離」で切り替えるとき、条件がシビアすぎると、1フレームごとに行動が切り替わってしまい、敵がその場で小刻みにガタガタ動くことがあります。

よくあるパターンは、次のように距離だけで即座に状態を切り替えているケースです。

この場合、プレイヤーとの距離が「攻撃距離ギリギリ」をうろうろすると、Attack と Chase が何度も切り替わってしまいます。

対策としては、「行動を切り替えるための距離」と「行動をやめる距離」に少し差をつけて、状態が頻繁に変わらないようにする方法が有効です(ヒステリシスを持たせるイメージです)。

以下は、追尾と攻撃の2状態に絞ったシンプルなサンプルです。

ポイントは、「攻撃を開始する距離」と「攻撃をやめる距離」を別にしていることです。

これにより、攻撃距離付近を行ったり来たりしても、状態がガタガタ変わりにくくなります。

② 追尾・攻撃・退避を一度に実装して、どこが悪いのか分からなくなる

もう一つよくあるのが、「追尾・攻撃・退避の3つを一気に実装してしまい、動かない原因がどこにあるのか分からなくなる」パターンです。

最初から全部入れようとすると、追尾の計算ミスなのか、攻撃条件なのか、退避の方向なのか、問題の切り分けが難しくなってしまいます。

対策としておすすめなのは、「まずは追尾だけ」の最小構成で敵を動かしてみて、そのあとで攻撃や退避を足していく方法です。

まずは、プレイヤーを追いかけるだけのシンプルなスクリプトから始めます。

このスクリプトを敵キャラクターにアタッチし、player にプレイヤーの Transform を設定した状態で、まずは「ちゃんと追いかけてくるかどうか」だけを確認します。

追尾が問題なく動くことを確認してから、次のように距離判定を足して攻撃行動を追加していきます。

このように、「まずは追尾だけ」「次に追尾+攻撃」と段階を踏むことで、どのタイミングで問題が発生したのかを追いやすくなります。退避AIを追加するのは、そのあとでも十分です。

敵AIは、一気に完成形を目指すほど難しく感じてしまいます。まずはシンプルな追尾だけを確実に動かし、少しずつ条件や行動を足していくことで、「どこでつまづいているのか」が見えやすくなります。

実践的な敵AI制作を学ぶには

Unity 敵AI 講座

ここまで、敵AIの基本ロジックについて解説してきました。

敵AIは、3つの基本パターンで構成されています。

Unity入門の森では、Unityを使ったアクションゲームの作り方を、基礎から完成まで丁寧に解説しています。

コードの意味から、なぜその実装方法を選ぶのかまで、しっかり理解できる内容になっています。

Q: 初心者でも本当に作れるの?
A: はい。Unity入門の森の講座では、プログラミング経験がなくても、手順通りに進めれば完成までたどり着けます。分からない部分は、動画と図解で詳しく説明しています。

アクションゲーム制作に特化した講座なら、効率的にスキルアップできます。

ゲーム制作でスキルを上げたい方は、ぜひチェックしてみてください。

ゲームを「遊ぶ側」から「作る側」へ

あなたのオリジナルゲーム、今年こそ完成させませんか?

RPG・アクション・ホラー…Unityで本格ゲームを作りたい人のための学習サイトです。

Unity入門の森|永久会員チケット

永久会員チケット|Unity入門の森

全講座ラインナップを見てみる

実際に完成するゲームを題材に、
ソースコード・素材・プロジェクト一式をすべて公開。
仕事や学校の合間の1〜2時間でも、
「写経→改造」で自分のゲームまで作りきれる環境です。

まとめ

敵AI まとめ

敵AIの基本ロジックについて解説しました。

追尾・攻撃・退避というシンプルな行動でも、距離に応じて切り替えるだけで、敵はプレイヤーの動きに反応するようになります。

要点のまとめ

  • 追尾AIは、プレイヤーを追いかける
  • 攻撃AIは、近づいたタイミングで攻撃する
  • 退避AIは、近づきすぎたときに距離を取る
  • 行動を切り替えることで、敵はより手ごわくなる

基本を押さえれば、あとは行動を組み合わせていくだけです。

まずは、シンプルな追尾AIから動かしてみてください。

「敵が追ってくる」その瞬間、敵AIは難しいものから、作って楽しいものに変わります。

動かしながら少しずつ調整することが、敵AIを理解するいちばんの近道です。

ゲーム制作をゼロから学びたいあなたへ
Unity入門の森を見る 初心者歓迎!動画×プロジェクト一式で本格ゲーム制作を学べる

コメント

タイトルとURLをコピーしました