2019/5/24 記述
unity 2019.1.1.f1
Arbor 3.5.3
※arbor記事一覧はこちら
ステートマシンの次はビヘイビアツリー(BehaviorTree)だ! ということで、
arborでビヘイビアーツリーに初めて触れてみました。
FF15開発のこのページにかかれていますが、
AI最前線の現場から【スクウェア・エニックス】ゲーム・キャラクターはどのように意志決定するのか | Think IT(シンクイット)
現在のゲームのキャラクターの人工知能の約7割程度がビヘイビア・ツリーで作られていると推測されます
と、ゲームキャラAIの多くはビヘイビアツリーを使って作られているようです。
で、調べてみたのですがステートマシンよりも少し難しく感じた。
わからない用語ばかりで、「パルスのファルシのルシがパージでコクーン」状態。
そういう訳で用語から調べる事にしました。
まず”ビヘイビアツリー”を直訳すると、Behavior(挙動)のTree(ツリー構造)…よくわからないから実践あるのみ。
一番基本的な事は公式のこちらで…
と言いたい所だけど、ビヘイビアツリー基本の説明があまりなく、ナビメッシュ絡みの説明も多くちょっと分かりづらかったです。
BehaviourTreeの作成
HierarchyウィンドウのCreateボタンから、「Arbor > BehaviourTree」を選択してBehaviourTreeを追加します。
コンポジットの作成
コンポジット(Composite)という実行ルートを制御する為のノードで、5種類あります。
・Sequencer
・Selector
・RandomSequencer
・RandomSelector
・RandomExecutor
まずはシーケンサーを見てみましょう。
Sequencer シーケンサー
子ノードを左から順に実行し、失敗した子ノードが見つかったら失敗を返し終了する。 子ノードがすべて成功したら成功を返す。
・Arborエディター上で右クリックして、
コンポジット作成 → Sequencer で作成
・その後に右クリックで
アクション作成 → Wait でwaitアクションを3つ作成します。
待ち時間のSecondは1(秒)を入れます
※waitノードの歯車を選んで複製で作成するのも楽です。
左から右に実行されるコンポジットなので実行結果はこうなります。
ながくなったので今日はここまで。
※arbor記事一覧はこちら
コメント