UE4でAIパトロールを作ろう!簡単な方法でAI基礎を学ぼう
テーブル
第1項 AIの紹介
第2項 AIの概要
第3項 NPCの巡回パトロール
第4項 AIの制作方法
第5項 AIの検出と攻撃
第6項 AIの戦闘
第7項 レジェンドの紹介
第8項 Patreonの感謝と報酬
第9項 プロジェクトのダウンロード
第10項 おすすめのチュートリアル
AIについての詳細
こんにちは!AIについて説明していきますね。このエピソードでは、AIの概要やパトロールするNPCの紹介を行います。次のエピソードでは、AIの制作方法について詳しく説明し、自由にAIを作成できるようにしていきます。また、AIの検出や攻撃、戦闘についても取り上げますので、ぜひお楽しみに!それでは、まずはいくつかのレジェンドに感謝の気持ちを伝えたいと思います。今回は、Trip、Kiwi、Dog、Legion、Edward、Rupesh、Jackの皆さんに感謝しています。また、Patreonの皆さんにも感謝しています。個別の報酬をご希望の方は、説明欄のPatreonのリンクをご覧ください。それでは、さっそく動画に入っていきましょう。
AI制作の準備
さて、次のエピソードでは、AIを作成するために、前回作成したサードパーソンキャラクターを複製して使用します。このキャラクターは剣を抜いたりしまったり、コンボ攻撃を行うことができます。そのため、サードパーソンキャラクターのプロジェクトが必要です。以下の3つのオプションから選んでください。
- オプションA:現在使用しているプロジェクトをダウンロードする(リンクは説明欄にあります)。
- オプションB:チュートリアル18から18.4を見ながら、独自のサードパーソン攻撃キャラクターを作成する。
- オプションC:このチュートリアルを見ながらAIの作成方法を学び、それに応じて自身でキャラクターの剣の抜き刺しやNPCの攻撃を実装する。
AIの歩行エリアの設定
では、まずNPCが移動できるエリアを設定しましょう。これはナビメッシュのバウンドボリュームを使用して行います。左側の検索バーに「nav」と入力し、ナビメッシュをプロジェクトにドラッグアンドドロップします。適切なサイズにスケールを調整し、Pキーを押すとボリュームの範囲がわかります。緑色の領域は移動可能な領域であり、赤色の領域は移動できない領域です。
AIコントローラーの作成
次に、AIコントローラーを作成しましょう。右クリックして「新規フォルダー」->「NPC」を作成し、その中に「AIコントローラー」を作成します。「AIコントローラー」の詳細設定で、「使用するAIコントローラーローテーション」のチェックを外し、「キャラクターの動き」の「カメラの回転」で「Z回転レート」を200に設定します。これにより、AIの回転方法を変更し、スムーズな動きを実現します。
ブラックボードの作成
AIがタスクを実行するために必要な変数を保持するために、ブラックボードを作成します。「ブラックボード」ボタンをクリックし、新しいキー(ベクトル型)を作成し、「目標位置」の名称を設定します。
行動ツリーの作成
次に、行動ツリーを作成します。行動ツリーは、NPCにどのタスクを実行するか指示するために使用します。ツリーのルートから分岐して、セレクターとシーケンスノードを使用します。セレクターノードは、特定のシーケンスを選択するために使用し、シーケンスノードは複数のタスクを順番に実行します。これにより、NPCに特定の動作を簡単に指示できます。
まず、ルートからセレクターノードを追加し、その下に2つのシーケンスノードを追加します。シーケンスノードは、NPCが特定の場所に移動するためのタスクと、NPCをその場所に送るためのタスクです。
タスクノードの作成
最後に、NPCが特定の場所に移動するために必要な情報を取得し、ブラックボードに格納するタスクノードを作成します。
まず、NPCブループリント内でキャストノードを使用して、ブラックボードとNPCの参照を取得します。その後、ブラックボードから目標位置の変数を取得し、それをNPCの移動タスクノードに接続します。
以上が、AI制作の基本的な流れです。次回以降では、さらに詳しくAIの検出や攻撃、戦闘について説明していきます。お楽しみに!
【リソース】
- プロジェクトダウンロード:(リンク)
- チュートリアル18-18.4:(リンク)