グラフの階層化

グラフの階層化を使えば、大まかな挙動と細かな挙動でグラフを分割できるため、柔軟なAIなどが組みやすくなります。

サブグラフの作成

サブグラフを使用する際は、以下挙動スクリプトが付いたステートもしくはアクションを作成してください。

SubStateMachine

子にステートマシンを持ち、ノードがアクティブになった際に実行します。

SubStateMachineReference

プレハブなどの外部ステートマシンを、子ステートマシンとして実行します。

SubBehaviourTree

子にビヘイビアツリーを持ち、ノードがアクティブになった際に実行します。

SubBehaviourTreeReference

プレハブなどの外部ビヘイビアツリーを、子ビヘイビアツリーとして実行します。

グラフの引数

親グラフと子グラフとの間でパラメータの受け渡しが可能です。

受け渡すパラメータの作成

  • 子グラフをArborEditorで開く。
  • サイドパネルのパラメータタブを開く。
  • 親グラフとの受け渡しを行うパラメータを作成。
  • 必要に応じて、GetとSetの可視設定を変更する。

子グラフでパラメータの受け取り

  • 受け取るパラメータをグラフビューにドラッグ&ドロップ。
  • メニューからGetを選択。
  • GetParameterの出力スロットから値を出力し、他ノードで値を使用。

子グラフでパラメータの設定

  • 設定するパラメータをグラフビューにドラッグ&ドロップ。
  • メニューからSetを選択。
  • 入力スロットに設定値を接続。

親グラフからパラメータを受け渡し

  • 親グラフをArborEditorで開く。
  • サブグラフの引数リストに受け渡したいパラメータを追加する。
  • 固定値や入力スロットから値を設定。

子グラフからのパラメータを受け取り

  • サブグラフの引数リストに受け取りたいパラメータを追加する。
  • 出力スロットから値を出力し、他ノードで値を使用。

引数の更新タイミング

パラメータを更新するタイミングを指定できます。

  • 更新タイミングフィールドをクリック。
  • タイミングを選択。

更新タイミング

項目 説明
Enter ノードがアクティブになり、子グラフが再生開始される際に更新
Execute 毎フレーム、子グラフが実行される際に更新

引数の設定

引数にはGetやSetの可視設定が行えます。

Setを行わずパラメータの値を上書きしたくない場合などに使用して下さい。

  • 引数の歯車アイコンをクリック
  • 設定ウィンドウにて引数の設定。

引数設定ウィンドウ

項目 説明
Set 入力フィールドの可視設定
Get 出力フィールドの可視設定

実行される子グラフが確定していない場合

SubStateMachineReferenceなどで実行される子グラフが確定していない場合は、受け渡すパラメータ名やタイプなどを指定する必要があります。

  • 引数リストの+ボタンをクリック。
  • 引数作成ウィンドウにてパラメータ名やタイプなどを記入し作成。

引数作成ウィンドウ

項目 説明
Parameter Name 受け渡したいパラメータの名前。
子グラフのパラメータと同名でなければならない。
Parameter Type 受け渡したいパラメータのタイプ。
子グラフのパラメータと同じタイプでなければならない。
Reference Type
(Parameter TypeがEnum、Component、Variableのみ)
受け渡したいパラメータの型
子グラフのパラメータと同じ型でなければならない。
Set 入力フィールドの可視設定
Get 出力フィールドの可視設定

引数設定ウィンドウ

項目 説明
Parameter Name 受け渡したいパラメータの名前。
子グラフのパラメータと同名でなければならない。
Parameter Type 受け渡したいパラメータのタイプ。
子グラフのパラメータと同じタイプでなければならない。
Reference Type
(Parameter TypeがEnum、Component、Variableのみ)
受け渡したいパラメータの型
子グラフのパラメータと同じ型でなければならない。
Set 入力フィールドの可視設定
Get 出力フィールドの可視設定