UE4でのAIの活用について

UE4ではブループリントのほかにBehaviorTree(ビヘイビアツリー)というものがあります。
このビヘイビアーツリーはAIの開発に特化していて、プレイヤーを追う追跡のAIやプレイヤーを見つけるまではステージを回る巡回のAIなどがあります。
今回は単純にプレイヤーを追う追跡のAIの作りかたおよび解説をしていきたいと思います。

まずはUE4でThirdPersonで新規プロジェクトの作成を行います。

追跡のAIで作るもの
・AI_Character ・・・ AIを実装するキャラクター
・AI_BehaviorTree ・・・ AIを実装するビヘイビアツリー
・AI_Track・・・追跡を実装するタスク
・AI_Controller・・・AI用のコントローラー

1.ブループリントクラスからAI用のキャラクターを作成する
キャラクターのMesh、Animationを自分好みに設定する。

2.ビヘイビアツリーを作成する
素材03
コンテンツブラウザー上で右クリック、「Artificial Intelligence」から「Behavior Tree」を選択する。
わかりやすいように「AI_BehaviorTree」などに変更しておくとよい。

3.Taskを作成する
素材04
先ほど作った「AI_BehaviorTree」を開き、ウィンドウの左上の「New Task」を選択する。
Taskを「AI_Track」という名前に変更しておく。

4.追跡するTaskを作成する
素材05
画像のようにノード同士をつなげる。
ここではAIのコントローラーを取得し、「Get PlayerPawn」で取得したPlayerPawnの位置まで移動させるということをしています。

5.ビヘイビアツリーを編集する
素材06
「Selecter」と先ほど作った「AI_Track」を作り画像のようにつなぐ。

6.AIControllerを作成する
素材07
コンテンツブラウザー上で右クリック、「Blueprint Class」を選択する。
ウィンドウ上の検索バーで「AIController」で検索し作成する。
「AI_Controller」という名前に変更しておく。
素材11
キャラクターのMesh、Animationを設定した後、画像のPawn部分のAI Controller Classを先ほど作った「AI_Controller」に設定します。

7.AIControllerの編集
素材08
画像のように「Event Tick」と「Run Behavior Tree」を作成しつなげます。
「Run Behavior Tree」の「BTAsset」で作成した「AI_Behaviortree」を選択します。

8.フィールド上の編集
素材09
画像の左側のクラスの検索バーで「Nav Mesh Bounds Volume」を検索しフィールドに出す。
画面左上にある「Show」をクリックし、「Navigation」のチェックに入れると、先ほど作ったMeshに入っているボックスの上に緑のエリアが表示されます。
これはAIが歩くことのできる範囲で、この中に追跡対象のキャラクターがいれば常についていくことができる。

素材10
このようにフィールド全体を囲う。

実行すると操作キャラクターについていくようになる。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です