Behavior Designerである処理をいろんなBehavior Treeで使いまわしたいときにはExternal Behavior Treeを使います。
Unity2018.3.9
External Behavior Treeを作成
まず、下記のようなBehavior Treeを普通に作ります。
ただログを出力するだけのBehavior Treeです。
これをExternal Behavior Treeにするには、右クリック > Save As External Behavior Tree を選択します。
するとBehavior Treeをアセットとして保存することができます。
External Behavior Treeを呼び出す
External Behavior Treeが作れたので、これを他のBehavior Treeから呼び出してみます。
External Behavior Treeを呼び出すにはAction TaskのBehavior Tree Referenceを使います。
これのInspectorから先ほどのExternal Behavior Treeをセットします。
再生すると正常にExternal Behavior TreeのログTaskが実行されました。
変数
External Behavior Treeに遷移する際、同じ名前の変数があったら値が引き継がれます。
試しにexternal_testというfloat型のLocal Variableを定義して値をセットしてからExternal Behavior Treeに遷移します。
External Behavior Tree側でもexternal_testというfloat型のLocal Variableを用意しておきます。
そしてこれの値をログ出力します。
この状態で再生すると、親のBehavior Treeでセットした値が正常に引き継がれていることが確認できました。