2016年1月29日金曜日

【Unity】 ビヘイビアツリー


 動物を動かすというやっとUnityらしい案件をすることになったので、(使うかわからないけど)ビヘイビアツリーを勉強することにした。ひとまず勉強のためにアセットを使わないで自分でツリーのノードを制御するスクリプトを書いて動かした。上の写真では塔に向かっていたキューブ(航跡:白)が途中でプレーヤーの操るスフィア(航跡:赤)を見つけ追跡を開始したが、逃げられたのでまた塔に向かっている。このキューブは単純なビヘイビアツリーを積んでいて、まずプレーヤーを探し、居なければ塔に向かい、塔に近づくとアイドル状態になる。



ツリーはキューブの初期化時に組まれる。ノードに種類を指定して処理と子ノードを与えてやれば、後は定期的にルートノードを発火させることでノードが次々に子ノードを発火させ勝手に処理する。視覚的には見えないのでデバッグが難しいが、遊ぶにはこの程度で十分だ。