CG関係の備忘録ブログ

主にZBRUSH、blender

UE5 敵の動きをつくる(追いかけ)

参考動画

【UE4/UE5ゲーム制作講座】ビヘイビアツリーを使ってみよう!【AI入門】 - YouTube

 

敵をつくる
Enemy2フォルダに新規BP→キャラクター
開いて・・・UE5ではうまくいかなかったので、1つ前のやり方でやった

名前をBP_EnemyControler

 

追いかけるに必要なパート

ビヘイビアツリー→ブラックボードを開き、key typeのTargetActor→BaseClassをActor
ビヘイビアツリーのMoveToを選択、BlackboardKeyをTargetActor
Waitを追加し、3秒まつ

 

ブループリント

BP_EnemyControlerを開きイベントグラフのBeginPlayから引っ張り、Runで検索、RunBehaviorTreeを選択、BTAssetにBT_AIEnemy2を指定する

SetValueasObjectでターゲットにGetBrackvoardのReturnValueをつなぐ
RunBehaviorTreeとSetValueasObjectをつなぐ
MakeLiteralNameでValueをSelfActorにして、ReturnValueをSetValueasObjectのKeyNameにつなぐ
ObjectValueをGetaRefarencetoSelf(※後でGetControlledPawnに変更)につなぐ

SetValueasObjectと引数をコピペしてつなぐ
MakeLiteralNameでValueをTargetActor
Selfを削除し、GetPlayerCharacterにする

 

タスクをつくる
新規タスク→BTTask_BlueprintBase、名前をBTT_Jump
左側の関数のオーバーライドプルダウンからReceiveExecuteAIを選択、ControlledPawnから出してCasttoCharacterを出す
CasttoCharacterのAsCharacterからJumpを出す
〃のCastFailedからFinishExecuteを出す

Jumpから引っ張りFinishExecuteを追加し、Successをチェック

 

シーケンスにジャンプとウエイトをつなげて待つパートを作成
追いかけるをRM→デコレーターを追加→ConeCheck
ConeOriginはSelfActor、ObservedはTargetActor
ConeDirectionはコーンの向き。NoneだとConeOriginの向きが使われる

 

※つくったBP_EnemyControlerのSetValueasObjectのObjctValueについてるSelfを削除し、代わりにGetControlledPawnをつなぐと前方を見つけてくれるようになる

 

1つ前のうろうろと組み合わせることもできた