Arbor 3: FSM & BT Graph Editor 3.7.1

公開メンバ関数 | 公開変数類 | 限定公開メンバ関数 | プロパティ | 全メンバ一覧
BehaviourTreeInternal クラス

Arbor.BehaviourTreeの内部クラス。 実際にGameObjectにアタッチするにはArbor.BehaviourTreeを使用する。 [詳解]

BehaviourTreeInternal の継承関係図

## 公開メンバ関数
bool | IsRevaluation (TreeNodeBase node)
| 再評価ノードかを返す。 [詳解]
void | Play ()
| ビヘイビアツリーの再生を開始。 [詳解]
void | Stop ()
| ビヘイビアツリーの再生を停止。 [詳解]
void | Pause ()
| ビヘイビアツリーの再生を一時停止。 [詳解]
void | Resume ()
| ビヘイビアツリーの再生を再開。 [詳解]
CompositeNode | CreateComposite (Vector2 position, int nodeID, System.Type classType)
| CompositeNodeを生成。 [詳解]
CompositeNode | CreateComposite (Vector2 position, System.Type classType)
| CompositeNodeを生成。 [詳解]
ActionNode | CreateAction (Vector2 position, int nodeID, System.Type classType)
| ActionNodeを生成。 [詳解]
ActionNode | CreateAction (Vector2 position, System.Type classType)
| ActionNodeを生成。 [詳解]
void | CalculatePriority ()
| ノードの優先度を計算する。 [詳解]
override void | OnValidateNodes ()
| ノードが変更された際に呼ばれる。 [詳解]
bool | CheckLoop (TreeNodeBase parentNode, TreeNodeBase childNode)
| ノードの接続がループしているかチェックする。 [詳解]
NodeBranch | ConnectBranch (int branchID, TreeNodeBase parentNode, TreeNodeBase childNode)
| NodeBranchの接続 [詳解]
NodeBranch | ConnectBranch (TreeNodeBase parentNode, TreeNodeBase childNode)
| NodeBranchの接続 [詳解]
void | DisconnectBranch (NodeBranch branch)
| NodeBranchの切断 [詳解]
void | Execute ()
| 手動で実行する。 UpdateSettings.typeがManualの場合に任意のタイミングでこのメソッドを呼んでください。 [詳解]
基底クラス NodeGraph に属する継承公開メンバ関数
Node | GetNodeFromIndex (int index)
| Nodeをインデックスから取得 [詳解]
Node | GetNodeFromID (int nodeID)
| ノードIDを指定してArbor.Nodeを取得する。 [詳解]
CalculatorNode | GetCalculatorFromIndex (int index)
| CalculatorNodeをインデックスから取得 [詳解]
int | GetCalculatorIndex (CalculatorNode calculator)
| CalculatorNodeのインデックスを取得 [詳解]
CalculatorNode | GetCalculatorFromID (int calculatorID)
| 演算ノードIDを指定してArbor.CalculatorNodeを取得する。 [詳解]
CalculatorNode | CreateCalculator (int nodeID, System.Type calculatorType)
| 演算ノードを生成。 [詳解]
CalculatorNode | CreateCalculator (System.Type calculatorType)
| 演算ノードを生成。 [詳解]
CalculatorNode | FindCalculator (Calculator calculator)
| Calculatorが属しているCalculatorNodeの取得。 [詳解]
bool | DeleteCalculator (CalculatorNode calculatorNode)
| 演算ノードの削除。 [詳解]
CommentNode | GetCommentFromIndex (int index)
| CommentNodeをインデックスから取得 [詳解]
int | GetCommentIndex (CommentNode comment)
| CommentNodeのインデックスを取得 [詳解]
CommentNode | GetCommentFromID (int commentID)
| コメントIDを指定してArbor.CommentNodeを取得する。 [詳解]
CommentNode | CreateComment (int nodeID)
| コメントを生成。 [詳解]
CommentNode | CreateComment ()
| コメントを生成。 [詳解]
void | DeleteComment (CommentNode comment)
| コメントの削除。 [詳解]
GroupNode | GetGroupFromIndex (int index)
| GroupNodeをインデックスから取得 [詳解]
GroupNode | CreateGroup (int nodeID)
| グループを生成。 [詳解]
GroupNode | CreateGroup ()
| グループを生成。 [詳解]
void | DeleteGroup (GroupNode group)
| グループの削除。 [詳解]
GroupNode | GetGroupFromID (int groupID)
| グループIDを指定してArbor.GroupNodeを取得する。 [詳解]
DataBranchRerouteNode | CreateDataBranchRerouteNode (Vector2 position, System.Type type, int nodeID)
| DataBranchRerouteNodeを生成。 [詳解]
DataBranchRerouteNode | CreateCalculatorBranchRerouteNode (Vector2 position, System.Type type, int nodeID)
| DataBranchRerouteNodeを生成。 [詳解]
DataBranchRerouteNode | CreateDataBranchRerouteNode (Vector2 position, System.Type type)
| DataBranchRerouteNodeを生成。 [詳解]
DataBranchRerouteNode | CreateCalculatorBranchRerouteNode (Vector2 position, System.Type type)
| DataBranchRerouteNodeを生成。 [詳解]
void | DeleteDataBranchRerouteNode (DataBranchRerouteNode rerouteNode)
| DataBranchRerouteNodeの削除。 [詳解]
void | DeleteCalculatorBranchRerouteNode (DataBranchRerouteNode rerouteNode)
| DataBranchRerouteNodeの削除。 [詳解]
bool | DeleteNode (Node node)
| ノードの削除。 [詳解]
Node | FindNodeContainsBehaviour (NodeBehaviour behaviour)
| NodeBehaviourが属しているノードの取得。 [詳解]
DataBranch | GetDataBranchFromIndex (int index)
| DataBranchをインデックスから取得 [詳解]
DataBranch | GetCalculatorBranchFromIndex (int index)
| DataBranchをインデックスから取得 [詳解]
int | GetDataBranchIndex (DataBranch branch)
| DataBranchのインデックスを取得 [詳解]
int | GetCalculatorBranchIndex (DataBranch branch)
| DataBranchのインデックスを取得 [詳解]
DataBranch | GetDataBranchFromID (int branchID)
| 演算ブランチIDを指定してArbor.DataBranchを取得する。 [詳解]
DataBranch | GetCalculatorBranchFromID (int branchID)
| 演算ブランチIDを指定してArbor.DataBranchを取得する。 [詳解]
DataBranch | ConnectDataBranch (int branchID, int inputNodeID, Object inputObj, DataSlot inputSlot, int outputNodeID, Object outputObj, DataSlot outputSlot)
| DataSlotの接続 [詳解]
DataBranch | ConnectCalculatorBranch (int branchID, int inputNodeID, Object inputObj, DataSlot inputSlot, int outputNodeID, Object outputObj, DataSlot outputSlot)
| DataSlotの接続 [詳解]
DataBranch | ConnectDataBranch (int inputNodeID, Object inputObj, DataSlot inputSlot, int outputNodeID, Object outputObj, DataSlot outputSlot)
| DataSlotの接続 [詳解]
DataBranch | ConnectCalculatorBranch (int inputNodeID, Object inputObj, DataSlot inputSlot, int outputNodeID, Object outputObj, DataSlot outputSlot)
| DataSlotの接続 [詳解]
void | DisconnectDataBranch (Object obj)
| 内部的に使用するメソッド。特に呼び出す必要はありません。 [詳解]
void | DeleteDataBranch (DataBranch branch)
| DataBranchの削除。 [詳解]
void | DeleteCalculatorBranch (DataBranch branch)
| DataBranchの削除。 [詳解]
bool | CheckLoopDataBranch (int inputNodeID, Object inputObj, int outputNodeID, Object outputObj)
| DataBranchがループしているかをチェックする。 [詳解]
bool | CheckLoopCalculatorBranch (int inputNodeID, Object inputObj, int outputNodeID, Object outputObj)
| DataBranchがループしているかをチェックする。 [詳解]
delegate void | NodeGraphCallback (NodeGraph nodeGraph)
| NodeGraphのコールバック用デリゲート [詳解]
virtual void | OnDestroy ()
| この関数はMonoBehaviourが破棄されるときに呼び出される。 [詳解]
void | DestroySubComponents (bool callback=true)
| 内部的に使用するメソッド。特に呼び出す必要はありません。 [詳解]
override string | ToString ()
| グラフを文字列に変換（デバッグ用）。 [詳解]
void | OnPoolResume ()
| 再開する際に呼ばれる。 [詳解]
void | OnPoolSleep ()
| プールに格納された際に呼ばれる。 [詳解]

## 公開変数類
bool | playOnStart = true
| 開始時に再生するフラグ。 [詳解]
bool | restartOnFinish = true
| 終了時に再開するフラグ。 [詳解]
UpdateSettings | updateSettings = new UpdateSettings()
| 更新に関する設定。 [詳解]
ExecutionSettings | executionSettings = new ExecutionSettings()
| 実行に関する設定。 [詳解]
基底クラス NodeGraph に属する継承公開変数類
string | graphName = ""
| グラフの名前。 一つのGameObjectに複数のグラフがある場合の識別や検索に使用する。 [詳解]
DebugInfiniteLoopSettings | debugInfiniteLoopSettings = new DebugInfiniteLoopSettings()
| 無限ループのデバッグ設定 [詳解]

## 限定公開メンバ関数
sealed override void | OnReset ()
| Resetもしくは生成時のコールバック。 [詳解]
override bool | OnDeleteNode (Node node)
| ノードの削除。 [詳解]
sealed override void | OnRegisterNodes ()
| Register nodes [詳解]
基底クラス NodeGraph に属する継承限定公開メンバ関数
virtual void | OnValidate ()
| MonoBehaviour.OnValidate を参照してください [詳解]

## プロパティ
PlayState | playState`[get]`
| 再生状態 [詳解]
NodeBranchies | nodeBranchies`[get]`
| NodeBranchのリストを取得 [詳解]
CompositeNodeList | compositeNodes`[get]`
| CompositeNodeのリストを取得 [詳解]
ActionNodeList | actionNodes`[get]`
| ActionNodeのリストを取得 [詳解]
RootNode | rootNode`[get]`
| RootNodeを取得 [詳解]
TreeNodeBase | currentNode`[get]`
| 現在のアクティブノード [詳解]
基底クラス NodeGraph に属する継承プロパティ
NodeGraph | parentGraph`[get]`
| 親グラフ [詳解]
NodeGraph | rootGraph`[get]`
| ルートグラフ [詳解]
Object | ownerBehaviourObject`[get, set]`
| このグラフの所有者であるNodeBehaviourのObject [詳解]
NodeBehaviour | ownerBehaviour`[get, set]`
| このグラフの所有者であるNodeBehaviour [詳解]
ParameterContainerInternal | parameterContainer`[get]`
| このグラフ内に割り当てられているParameterContainer [詳解]
string | displayGraphName`[get]`
| ノードグラフの表示名。graphNameが空かnullの場合は"(No Name)"を返す。 [詳解]
DebugInfiniteLoopSettings | currentDebugInfiniteLoopSettings`[get]`
| 現在の無限ループデバッグ設定。 [詳解]
bool | external`[get]`
| 外部グラフから生成されたフラグ [詳解]
int | nodeCount`[get]`
| Nodeの数を取得。 [詳解]
int | calculatorCount`[get]`
| CalculatorNodeの数を取得。 [詳解]
CalculatorNode[] | calculators`[get]`
| 全てのArbor.CalculatorNodeを取得する。 [詳解]
int | commentCount`[get]`
| CommentNodeの数を取得。 [詳解]
CommentNode[] | comments`[get]`
| 全てのArbor.CommentNodeを取得する。 [詳解]
int | groupCount`[get]`
| GroupNodeの数を取得。 [詳解]
DataBranchRerouteNodeList | dataBranchRerouteNodes`[get]`
| DataBranchRerouteNodeリスト [詳解]
DataBranchRerouteNodeList | calculatorBranchRerouteNodes`[get]`
| DataBranchRerouteNodeリスト [詳解]
int | dataBranchCount`[get]`
| DataBranchの数を取得。 [詳解]
int | calculatorBranchCount`[get]`
| DataBranchの数を取得。 [詳解]
DataBranch[] | calculatorBranchies`[get]`
| 全てのArbor.DataBranchを取得する。 [詳解]
bool | isDeserialized`[get]`
| デシリアライズ済みかどうかを返す。 [詳解]

## その他の継承メンバ
基底クラス NodeGraph に属する継承静的公開メンバ関数
static NodeGraph | FindGraph (string name)
| シーン内にあるNodeGraphを名前で取得する。 [詳解]
static NodeGraph | FindGraph (string name, System.Type type)
| シーン内にあるNodeGraphを名前で取得する。 [詳解]
static T | FindGraph< T > (string name)
| シーン内にあるNodeGraphを名前で取得する。 [詳解]
static NodeGraph[] | FindGraphs (string name)
| シーン内にある同一名のNodeGraphを取得する。 [詳解]
static NodeGraph[] | FindGraphs (string name, System.Type type)
| シーン内にある同一名のNodeGraphを取得する。 [詳解]
static T[] | FindGraphs< T > (string name)
| シーン内にある同一名のNodeGraphを取得する。 [詳解]
static NodeGraph | FindGraph (GameObject gameObject, string name)
| GameObjectにアタッチされているNodeGraphを名前で取得する。 [詳解]
static NodeGraph | FindGraph (GameObject gameObject, string name, System.Type type)
| GameObjectにアタッチされているNodeGraphを名前で取得する。 [詳解]
static T | FindGraph< T > (GameObject gameObject, string name)
| GameObjectにアタッチされているNodeGraphを名前で取得する。 [詳解]
static NodeGraph[] | FindGraphs (GameObject gameObject, string name)
| GameObjectにアタッチされている同一名のNodeGraphを取得する。 [詳解]
static NodeGraph[] | FindGraphs (GameObject gameObject, string name, System.Type type)
| GameObjectにアタッチされている同一名のNodeGraphを取得する。 [詳解]
static T[] | FindGraphs< T > (GameObject gameObject, string name)
| GameObjectにアタッチされている同一名のNodeGraphを取得する。 [詳解]
static NodeGraph | Create (GameObject gameObject, System.Type classType)
| NodeGraphの作成 [詳解]
static GraphType | Create< GraphType > (GameObject gameObject)
| NodeGraphの作成 [詳解]
static NodeGraph | Instantiate (NodeGraph sourceGraph, NodeBehaviour ownerBehaviour, bool usePool=false)
| NodeGraphを生成 [詳解]
static GraphType | Instantiate< GraphType > (GraphType sourceGraph, NodeBehaviour ownerBehaviour, bool usePool=false)
| NodeGraphを生成 [詳解]
static void | Destroy (NodeGraph nodeGraph)
| NodeGraphの破棄 [詳解]
基底クラス NodeGraph に属する継承イベント
System.Action | onAfterDeserialize
| デシリアライズ後のコールバック [詳解]
NodeGraphCallback | destroyCallback
| 破棄される際のコールバック [詳解]
NodeGraphCallback | stateChangedCallback
| 状態が変わった際のコールバック [詳解]

## 詳解

Arbor.BehaviourTreeの内部クラス。 実際にGameObjectにアタッチするにはArbor.BehaviourTreeを使用する。

## メソッド詳解

## ◆ CalculatePriority()

void CalculatePriority | ( |  | ) |

ノードの優先度を計算する。

## ◆ CheckLoop()

bool CheckLoop | ( | TreeNodeBase | parentNode,
|  | TreeNodeBase | childNode
| ) |  |

ノードの接続がループしているかチェックする。

引数

  parentNode | 親ノード
  childNode | 子ノード

戻り値
  ループしている場合にtrueを返す。

## ◆ ConnectBranch() [1/2]

NodeBranch ConnectBranch | ( | int | branchID,
|  | TreeNodeBase | parentNode,
|  | TreeNodeBase | childNode
| ) |  |

NodeBranchの接続

引数

  branchID | 作成するNodeBranchのID
  parentNode | 親ノード
  childNode | 子ノード

戻り値
  接続したNodeBranch

## ◆ ConnectBranch() [2/2]

NodeBranch ConnectBranch | ( | TreeNodeBase | parentNode,
|  | TreeNodeBase | childNode
| ) |  |

NodeBranchの接続

引数

  parentNode | 親ノード
  childNode | 子ノード

戻り値
  接続したNodeBranch

## ◆ CreateAction() [1/2]

ActionNode CreateAction | ( | Vector2 | position,
|  | int | nodeID,
|  | System.Type | classType
| ) |  |

ActionNodeを生成。

引数

  position | ノードの位置
  nodeID | ノードID
  classType | ActionBehaviourの型

戻り値
  生成したActionNode。

## ◆ CreateAction() [2/2]

ActionNode CreateAction | ( | Vector2 | position,
|  | System.Type | classType
| ) |  |

ActionNodeを生成。

引数

  position | ノードの位置
  classType | ActionBehaviourの型

戻り値
  生成したActionNode。

## ◆ CreateComposite() [1/2]

CompositeNode CreateComposite | ( | Vector2 | position,
|  | int | nodeID,
|  | System.Type | classType
| ) |  |

CompositeNodeを生成。

引数

  position | ノードの位置
  nodeID | ノードID
  classType | CompositeBehaviourの型

戻り値
  生成したCompositeNode。

## ◆ CreateComposite() [2/2]

CompositeNode CreateComposite | ( | Vector2 | position,
|  | System.Type | classType
| ) |  |

CompositeNodeを生成。

引数

  position | ノードの位置
  classType | CompositeBehaviourの型

戻り値
  生成したCompositeNode。

## ◆ DisconnectBranch()

void DisconnectBranch | ( | NodeBranch | branch | ) |

NodeBranchの切断

引数

  branch | 切断するNodeBranch

## ◆ Execute()

void Execute | ( |  | ) |

手動で実行する。 UpdateSettings.typeがManualの場合に任意のタイミングでこのメソッドを呼んでください。

## ◆ IsRevaluation()

bool IsRevaluation | ( | TreeNodeBase | node | ) |

再評価ノードかを返す。

引数

  node | ノード

戻り値
  再評価ノードであればtrueを返す。

## ◆ OnDeleteNode()

override bool OnDeleteNode | ( | Node | node | ) |
| protected virtual

ノードの削除。

引数

  node | 削除するノード

戻り値
  削除した場合はtrue、していなければfalseを返す。

NodeGraphを実装しています。

## ◆ OnRegisterNodes()

sealed override void OnRegisterNodes | ( |  | ) |
| protected virtual

Register nodes

NodeGraphを実装しています。

## ◆ OnReset()

sealed override void OnReset | ( |  | ) |
| protected virtual

Resetもしくは生成時のコールバック。

NodeGraphを再実装しています。

## ◆ OnValidateNodes()

override void OnValidateNodes | ( |  | ) |
| virtual

ノードが変更された際に呼ばれる。

NodeGraphを再実装しています。

## ◆ Pause()

void Pause | ( |  | ) |

ビヘイビアツリーの再生を一時停止。

## ◆ Play()

void Play | ( |  | ) |

ビヘイビアツリーの再生を開始。

## ◆ Resume()

void Resume | ( |  | ) |

ビヘイビアツリーの再生を再開。

## ◆ Stop()

void Stop | ( |  | ) |

ビヘイビアツリーの再生を停止。

## メンバ詳解

## ◆ executionSettings

ExecutionSettings executionSettings = new ExecutionSettings()

実行に関する設定。

## ◆ playOnStart

bool playOnStart = true

開始時に再生するフラグ。

## ◆ restartOnFinish

bool restartOnFinish = true

終了時に再開するフラグ。

## ◆ updateSettings

UpdateSettings updateSettings = new UpdateSettings()

更新に関する設定。

## プロパティ詳解

## ◆ actionNodes

ActionNodeList actionNodes
| get

ActionNodeのリストを取得

## ◆ compositeNodes

CompositeNodeList compositeNodes
| get

CompositeNodeのリストを取得

## ◆ currentNode

TreeNodeBase currentNode
| get

現在のアクティブノード

## ◆ nodeBranchies

NodeBranchies nodeBranchies
| get

NodeBranchのリストを取得

## ◆ playState

PlayState playState
| get

再生状態

## ◆ rootNode

RootNode rootNode
| get

RootNodeを取得