Invector FSM AIの概要と使い方まとめ - IG Unityゲーム開発部

Invector FSM AIの概要と使い方まとめ

invectorにAIを追加するアセット、Invector FSM AIの使い方をまとめました。

Invector FSM AI Template

InvectorにAIを追加できる

シューティングゲーム等で敵キャラとして登場するキャラクターのAI機能を担うのが本アセットです。

Invector のアセットも必要

本アセット単体ではだめで、Invectorそのもののアセットも購入してプロジェクトにインポートする必要があります。

ゲームに追加できるAIの種類が複数ある

本アセットで使えるAIにも種類があります。

市民のAI

一般市民で特に攻撃踏破してきませんが、こちらから殴る、銃で撃つなど攻撃すると怖がって逃げていくAIです。

格闘キャラのAI

こちらが攻撃すると反撃してきたり、視界に入ると攻撃してくるAIです。視界に入ると攻撃する動作自体は特にこのアセットを追加しなくても、Invectorのテンプレートそのものに備わっている機能です。攻撃したら反撃してくる、が本アセットで追加できるAIの機能です。

シューティングプレイのAI

銃で敵を撃ったときに敵が反撃して銃を撃ってきたり、敵に見つかったら銃で撃ってくるようにするAIを追加することができます。

Package Managerから本アセットをプロジェクトに追加する

他のアセット同様にPackage Managerからこのアセットをプロジェクトに追加します。

実際にInvector Shooter Templateに対して本アセットをインポートしてみる

Unity 6、URPのプロジェクトに対して、Invector Shooter Templateをすでにインポートしてある状態で本アセットをインポートしてみます。以下の記事でShooter Templateについてインポートしている状態という前提です。

実際にアセットをインポートしていきます。

エラーが二つ出ました。

Assets\Invector-3rdPersonController\Basic Locomotion\Scripts\CharacterController\vThirdPersonMotor.cs(1606,64): error CS1061: 'Vector3' does not contain a definition for 'DotVector' and no accessible extension method 'DotVector' accepting a first argument of type 'Vector3' could be found (are you missing a using directive or an assembly reference?)
Assets\Invector-3rdPersonController\Basic Locomotion\Scripts\CharacterController\vThirdPersonMotor.cs(1632,64): error CS1061: 'Vector3' does not contain a definition for 'DotVector' and no accessible extension method 'DotVector' accepting a first argument of type 'Vector3' could be found (are you missing a using directive or an assembly reference?)

Shooter Templateを再インポートしてみます。

これでエラーは出なくなりました。ただ、テクスチャがピンクなので修正しておきます。