Unityでジャンクゲームを作っているっぽい

会社帰りにGPD PocketにUnity入れてゲーム作ってます

【CEtest2】12_CorgiEngineでちょっと賢い敵AIを作る

公式を調べてみる

とりあえず、ここを参考にする
corgi-engine-docs.moremountains.com

ただ往復するだけの動きを作ってみる

基本部分を用意

enemyプレハブ複製してMyTestEnemy2とする
以前つくったenemyから不要コンポーネントを消す
f:id:mekatamatama:20220207224352p:plain

AI用のコンポーネントを追加

AI Brainは、AI制御用っぽい
AI Action Patrol Within Boundsは、指定した範囲内を移動するっぽい
f:id:mekatamatama:20220207224448p:plain

AI Action Patrol Within Boundsを設定

LabelにPatrolbasicを設定

AI Brainで指定するときに見やすくなる予定
f:id:mekatamatama:20220207224610p:plain

Boundsを設定

一度プレハブをシーンに配置して、LeftとRightの値を決める
ちょっと見難いけど、box風に表示してくれるのでわかりやすい
f:id:mekatamatama:20220207224648p:plain

AI Brainに動きを設定

StatesのElement0を追加
StateNameをPatrollingにする
ActionのドロップダウンからPatrolbasicを選択
これで、往復移動だけするはず
f:id:mekatamatama:20220207225156p:plain

おおーできた
youtu.be

playerを発見したら攻撃したい

AI BrainにState追加

StateNameをAttackingにしておく
f:id:mekatamatama:20220207225732p:plain

AI Decision Target Radius

発見したい距離を設定してこれでplayerを判定する
f:id:mekatamatama:20220207230234p:plain

AI Brainに発見処理を追加

まずはPatrollingのTransitionsを追加
noneのドロップダウンからAI Decision Target Radiusを選択
TrueState(true判定)ならば、Attacking Stateに遷移
f:id:mekatamatama:20220207230955p:plain

AI Action Shoot追加

ターゲット(player)に向いて攻撃してほしいのでFaceTargetを設定します
f:id:mekatamatama:20220207231210p:plain

AI Brainに攻撃処理を追加

Attacking StateのActionのドロップダウンからAI Action Shootを選択
これで、Patrollingから遷移してきたら攻撃するはず
f:id:mekatamatama:20220207231254p:plain

往復移動から攻撃に遷移できた

youtu.be