敵が攻撃して逃げて隠れる→再び出てきて敵が攻撃して逃げて隠れるというAI。
VRゲーム用にAIのやり直し。先は長いけど繰り返し学習して身につく。#UE5 #アンリアルエンジン pic.twitter.com/vyfxjwjN50
— ハマーキーUE (@Hummerkey_UE) October 22, 2023
敵AIの第3回になります。過去記事で作成したものが必須になります。
敵AI:敵がルートを巡回しプレイヤーや音に気付くと反応
敵AI 2:敵が間合いを取りながら攻撃してくる
記事は自分でやり直す時のために簡単にまとめているものですから、学習するなら参考元の
Ali Elzoheiry氏のSmart Enemy AI Tutorial Seriesの動画を視聴してください。
環境クエリ
名前: EQS_FindCover
新規作成。
SimpleGridで右クリックしテストを追加 > PathFinding。
設定変更は不要。
SimpleGridで右クリックしテストを追加 > Trace。
※Context Height Offsetは100でもいいと思います。0だと腰くらいの低い遮蔽物の後ろも見えなくなってしまいます。
SimpleGridで右クリックしテストを追加 > Distance。
ビヘイビアツリー
前回までに作成したAttack(Sequence)とStrafe(Selector)を一時的に切断します。
FindCover(Sequence)
BTTask_SetMovementSpeedのSpeedをSprintingにする。
Run EQS QueryにEQS_FindCoverを選択する。
Blackboard KeyにPointOfInterestを選択する。
Move ToのAcceptable Radiusを10.0にする。
Blackboard KeyにPointOfInterestを選択する。
BTTask_MoveToIdealRangeのAttack TargetをAttackTargetにする。
Ideal RangeをAttackRadiusにする。
BTTask_DefaultAttackのAttack TargetをAttackTargetにする。
テストプレイ
レベルに設置済のBP_EnemyBaseを削除して、新規で配置してテストしましょう。
配置済のアクターを使うと不具合が発生しやすい印象です。
参考元
Smart Enemy AI | (Part 4: EQS) | Tutorial in Unreal Engine 5 (UE5) | Youtube
コメント