ストアページへのリンクです↓
GameCreator1の拡張モジュールでAiの作成ができるアセットです。
導入から設定
プロジェクトビュー
- パッケージマネージャーからインストール
- プロジェクトビューから Create → GameCreator → Behavior → BehaviorTree を選択してBehaviorGraphファイルを作成
- BehaviorGraphファイルをダブルクリックでBehaviorEditor画面を開ける
- BehaviorEditor 左上の Create → Root でビヘイビアグラフに入ったときの最初の通り道を作る
- 続いて自分の実装したい処理におうじて Composite Task を追加していく。
(ここが超難しいので後で詳しく説明。)
ヒエラルキー
- Behaviorで動作させたいオブジェクト(主にキャラクターなど)に Add Component から Behaviorコンポーネントをアタッチする
- 必要に応じて Perception コンポーネントをアタッチする(キャラクターの視界を作り出せるコンポーネント)
Behaviorの処理の流れ
Behaviorは基本 Composite で大きく処理の流れを制御します。言葉で説明するより図解した方がわかりやすいので画像を用意しました。
1 Selector 条件が成立する処理を1つだけ実行
2 Sequence 条件が成立し続ける限り連続でタスクを実行
3 Parallel 全ての処理を同時に実行
CompositeがSuccessまたはFailureに応じてインスペクター上のBehaviorコンポーネントから連続で処理をするか、処理を停止するかを設定できます。
ちなみにその下の、SetFrequencyでは1秒間に呼ばれるBehavior処理の回数を指定することができます。1だと1秒間に1回、30だと1秒間に30回(30FPS)「まちがってたらすまん」
実際はこれらのCompositeを複数組み合わせてノードベースの処理を作ります。またBehaviorGraphをパーツ単位で考えてBehaviorGraphからBehaviorGraphへと順々に処理を渡すようにしてモジュール化して処理を作っていくのが基本的な考え方になるそうです。↓実際に作成したAiの例。
使い始めは思ったとおりに動いてくれずに訳がわからなくなって嫌になりますが、デバッグ中に処理の動きを見ることもできるので頑張って理想のAiを作成していきましょう。(BehaviorGraphを開いてアタッチしているGameObjectを選択するとBehaviorGraphの処理の流れが色分けされて表示される。)
コメント