unity Behavior Designer使い方part5エネミーの基本的な動作

どうもききです。
今回は前回の記事に続きunity Behavior Designer使い方を解説していきたいと思います。今回は前回までのBehaviortreeの特徴を整理し基本的な流れを解説していきたいと思います。
ゲームの敵キャラクターであるエネミーの基本的な動作としては

ターゲットが視界に入る→追跡→攻撃範囲内→攻撃

の流れになると思います。とりあえずこの最低限の機能をBehaviortreeで再現したいと思います。

こちらがそのBehaviortreeになります。
解説していくと自分が生きている間このAIを継続する。パラレルで二つの動作を同時進行左は自分の現在のHPを常に取得する。

次に右側の動作ですが

何もなければ周囲をパトロールします。ターゲットが視界に入るとターゲットを追跡。攻撃範囲内に入ったら追跡を終了しターゲットの方向に向きつつ攻撃します。(useは武器の使用)

注目してほしいのはアボートタイプです。

lowerprioorityに設定されていると思います。

lowerprioorityは自己の優先なので優先順位が実行可能な場合優先順位が低いほうを停止して高いほうを実行します。

なのでターゲットが範囲内に入ったらseekタスクは停止して左側の枝が実行されます。

ターゲットが範囲外に出て視界にいた場合はまたseekタスクが実行され視界でも範囲内でもなければpatolタスクが実行されます。この処理の流れはRepeaterタスクによって永続し自分が死ぬまで継続されます。

以上が基本的な動作になります。

次回からさらに高度なAIを解説していきたいと思います。

 

Behavior Designerの使い方part6 Repeater

コメントを残す

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

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)