敵のランダムな徘徊方法!

~今回やりたい事~

・敵をうろうろ徘徊させる!!

 

以上!!(上から目線)

 

 

「ThirdPersonCharacter」をコピーし

コピーした奴に「Enemy」と名付けます。

f:id:Free_Gamer:20190808181630p:plain

 

「Enemy」を動かすためのコントローラー

「AIController」を作成します。

f:id:Free_Gamer:20190808182020p:plain

「Enemy_Con」と名付けます。

 

ビヘイビアツリー・ブラックボードを作成します。

ビヘイビアツリーには「Enemy_BT」

ブラックボードには「Enemy_BB」と名付けました。

f:id:Free_Gamer:20190808182447p:plain

 

「Enemy_Con」を開き

以下の処理を組みます。

f:id:Free_Gamer:20190808184154p:plain

これでブラックボードとビヘイビアツリーの使用が可能になります。

 

「Enemy_BB」を開きます。

Vector」型のキーを追加します。

「RandomLocation」と名付けました。

f:id:Free_Gamer:20190809115954p:plain

 

「Enemy_BT」を開きます。

「新規タスク」を作成します。

f:id:Free_Gamer:20190809120211p:plain

コンテンツブラウザに作成された新規タスクがあるので

「RandomMove_BT_Task」と名付けます。

f:id:Free_Gamer:20190809120346p:plain

 

「RandomMove_BT_Task」を開きます。 

以下の処理を作成します。

f:id:Free_Gamer:20190809121136p:plain
変数

f:id:Free_Gamer:20190809120600p:plain

後から編集しやすいように「MoveRadius」を編集可能に。

「RandomLocation」は絶対編集可能に。

じゃないと動きません。

 

「Enemy_BT」を開きます。

以下の処理を作成します。

f:id:Free_Gamer:20190809121519p:plain

「RandomMove_BT_Task」を選択し

画面右側にある詳細パネルを以下のように設定します。

f:id:Free_Gamer:20190809121621p:plain

「MoveTo」の詳細パネルを以下のように設定します。

f:id:Free_Gamer:20190809121714p:plain

 

 

ビューポートに戻ります。

AIを動かすための領域

「NavMeshBoundsVolume」をレベル内に配置します。

f:id:Free_Gamer:20190809121846p:plain

 

「NavMeshBoundsVolume」の大きさを

「20」ぐらいに設定します。

f:id:Free_Gamer:20190809122334p:plain

この箱の中を十分に覆いつくすぐらいの大きさですね。

f:id:Free_Gamer:20190809122422p:plain

「P」キーを押すと

AIの動ける範囲が緑色で表示されます。

 

「Enemy」を開きます。

f:id:Free_Gamer:20190808181630p:plain

「クラスのデフォルト」の詳細パネルの

「Pawn」項目内にある

「AI ControllerClass」を「Enemy_Con」に設定します。

f:id:Free_Gamer:20190809122828p:plain

f:id:Free_Gamer:20190809122907p:plain

これで「Enemy」は

「Enemy_Con」によって操作されるようになりました。

 

 

これでプレイしてみましょう!

youtu.be

 

うろうろうろうろ目障りなぐらいに移動してますね!^^

 

ちなみに

「RandomMove_BT_Task」の

「MoveRadius」の値を「5000」にすると

「Enemy」の移動距離が伸びます。

f:id:Free_Gamer:20190809124008p:plain

 

逆に「100」とか小さい数値にすると

移動距離が少なくなります。

 

いろいろいじって遊んでみてください^^

 

それではまた!^^ノシ