Arbor 3: FSM & BT Graph Editor  3.7.8
ArborFSM クラス

ステートマシンのコア部分。
GameObjectにアタッチして使用する。 [詳解]

ArborFSM の継承関係図
ArborFSMInternal NodeGraph IPoolCallbackReceiver

静的公開メンバ関数

static ArborFSM FindFSM (string name)
 シーン内にあるArborFSMを名前で取得する。 [詳解]
 
static ArborFSM[] FindFSMs (string name)
 シーン内にある同一名のArborFSMを取得する。 [詳解]
 
static ArborFSM FindFSM (GameObject gameObject, string name)
 GameObjectにアタッチされているArborFSMを名前で取得する。 [詳解]
 
static ArborFSM[] FindFSMs (GameObject gameObject, string name)
 GameObjectにアタッチされている同一名のArborFSMを取得する。 [詳解]
 
- 基底クラス 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の破棄 [詳解]
 

その他の継承メンバ

- 基底クラス ArborFSMInternal に属する継承公開メンバ関数
int IndexOfStateLinkHistory (StateLink stateLink)
 指定したStateLinkによって遷移したヒストリーでのインデックスを取得。 [詳解]
 
State GetStateFromIndex (int index)
 Stateをインデックスから取得 [詳解]
 
int GetStateIndex (State state)
 Stateのインデックスを取得 [詳解]
 
State GetStateFromID (int stateID)
 ステートIDを指定してArbor.Stateを取得する。 [詳解]
 
State GetState (StateLink stateLink)
 StateLinkを指定してArbor.Stateを取得する。 [詳解]
 
State CreateState (int nodeID, bool resident)
 ステートを生成。 [詳解]
 
State CreateState (bool resident)
 ステートを生成。 [詳解]
 
State CreateState ()
 ステートを生成。 [詳解]
 
State FindState (string stateName)
 ステートを名前で検索。 [詳解]
 
State[] FindStates (string stateName)
 ステートを名前で検索。 [詳解]
 
State FindStateContainsBehaviour (StateBehaviour behaviour)
 StateBehaviourが属しているステートの取得。 [詳解]
 
bool DeleteState (State state)
 ステートの削除。 [詳解]
 
StateLinkRerouteNode CreateStateLinkRerouteNode (Vector2 position, int nodeID, Color lineColor)
 StateLinkRerouteNodeを作成する。 [詳解]
 
StateLinkRerouteNode CreateStateLinkRerouteNode (Vector2 position, int nodeID)
 StateLinkRerouteNodeを作成する。 [詳解]
 
StateLinkRerouteNode CreateStateLinkRerouteNode (Vector2 position, Color lineColor)
 StateLinkRerouteNodeを作成する。 [詳解]
 
StateLinkRerouteNode CreateStateLinkRerouteNode (Vector2 position)
 StateLinkRerouteNodeを作成する。 [詳解]
 
void Play ()
 ステートマシンの再生を開始。 [詳解]
 
void Stop ()
 ステートマシンの再生を停止。 [詳解]
 
void Pause ()
 ステートマシンの再生を一時停止。 [詳解]
 
void Resume ()
 ステートマシンの再生を再開。 [詳解]
 
void ExecuteUpdate (bool autoExecuteLateUpdate=false)
 Updateを実行する。 UpdateSettings.typeがManualの場合に任意のタイミングでこのメソッドを呼んでください。 [詳解]
 
void ExecuteLateUpdate ()
 LateUpdateを実行する。 UpdateSettings.typeがManualの場合に任意のタイミングでこのメソッドを呼んでください。 [詳解]
 
bool Transition (State nextState, TransitionTiming transitionTiming)
 状態遷移 [詳解]
 
bool Transition (State nextState, bool immediateTransition)
 状態遷移 [詳解]
 
bool Transition (State nextState)
 状態遷移する。実際に遷移するタイミングは現在フレームの最後(LateUpdate時)。 [詳解]
 
bool Transition (int nextStateID, TransitionTiming transitionTiming)
 状態遷移 [詳解]
 
bool Transition (int nextStateID, bool immediateTransition)
 状態遷移 [詳解]
 
bool Transition (int nextStateID)
 状態遷移する。実際に遷移するタイミングは現在フレームの最後(LateUpdate時)。 [詳解]
 
bool Transition (StateLink nextStateLink, TransitionTiming transitionTiming)
 状態遷移 [詳解]
 
bool Transition (StateLink nextStateLink, bool immediateTransition)
 状態遷移 [詳解]
 
bool Transition (StateLink nextStateLink)
 状態遷移する。実際に遷移するタイミングは現在フレームの最後(LateUpdate時)。 [詳解]
 
void SendTrigger (string message, SendTriggerFlags flags)
 トリガーの送信 [詳解]
 
void SendTrigger (string message)
 トリガーの送信 [詳解]
 
- 基底クラス 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の削除。 [詳解]
 
virtual void OnValidateNodes ()
 ノードが変更された際に呼ばれる。 [詳解]
 
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 ()
 プールに格納された際に呼ばれる。 [詳解]
 
- 基底クラス ArborFSMInternal に属する継承公開変数類
bool playOnStart = true
 開始時に再生するフラグ。 [詳解]
 
UpdateSettings updateSettings = new UpdateSettings()
 更新に関する設定。 [詳解]
 
- 基底クラス NodeGraph に属する継承公開変数類
string graphName = ""
 グラフの名前。
一つのGameObjectに複数のグラフがある場合の識別や検索に使用する。 [詳解]
 
DebugInfiniteLoopSettings debugInfiniteLoopSettings = new DebugInfiniteLoopSettings()
 無限ループのデバッグ設定 [詳解]
 
- 基底クラス ArborFSMInternal に属する継承静的公開変数類
const SendTriggerFlags allSendTrigger = (SendTriggerFlags)(-1)
 SendTriggerFlagsの全てが有効なフラグ [詳解]
 
- 基底クラス ArborFSMInternal に属する継承限定公開メンバ関数
override bool OnDeleteNode (Node node)
 ノードの削除。 [詳解]
 
override void OnValidate ()
 MonoBehaviour.OnValidate を参照してください [詳解]
 
sealed override void OnReset ()
 Resetもしくは生成時のコールバック。 [詳解]
 
sealed override void OnRegisterNodes ()
 Register nodes [詳解]
 
- 基底クラス ArborFSMInternal に属する継承プロパティ
PlayState playState [get]
 再生状態 [詳解]
 
string fsmName [get, set]
 FSMの名前。
一つのGameObjectに複数のFSMがある場合の識別や検索に使用する。 [詳解]
 
int startStateID [get]
 開始ステートのIDを取得する。 [詳解]
 
State currentState [get]
 現在のArbor.Stateを取得する。 [詳解]
 
State prevTransitionState [get]
 前のステート [詳解]
 
State nextTransitionState [get]
 次のステート [詳解]
 
State nextState [get]
 遷移予約されたArbor.Stateを取得する。 [詳解]
 
State reservedState [get]
 遷移予約されたArbor.Stateを取得する。 [詳解]
 
StateLink reservedStateLink [get]
 遷移予約されたArbor.StateLinkを取得する。 [詳解]
 
int stateCount [get]
 Stateの数を取得。 [詳解]
 
StateLinkRerouteNodeList stateLinkRerouteNodes [get]
 StateLinkRerouteNodeリスト [詳解]
 
State[] states [get]
 全てのArbor.Stateを取得する。 [詳解]
 
- 基底クラス 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 に属する継承イベント
System.Action onAfterDeserialize
 デシリアライズ後のコールバック [詳解]
 
NodeGraphCallback destroyCallback
 破棄される際のコールバック [詳解]
 
NodeGraphCallback stateChangedCallback
 状態が変わった際のコールバック [詳解]
 

詳解

ステートマシンのコア部分。
GameObjectにアタッチして使用する。

Open EditorボタンをクリックとArbor Editor Windowが開く。

メソッド詳解

◆ FindFSM() [1/2]

static ArborFSM FindFSM ( GameObject  gameObject,
string  name 
)
static

GameObjectにアタッチされているArborFSMを名前で取得する。

引数
gameObject検索したいGameObject。
name検索するArborFSMの名前。
戻り値
見つかったArborFSM。見つからなかった場合はnullを返す。

◆ FindFSM() [2/2]

static ArborFSM FindFSM ( string  name)
static

シーン内にあるArborFSMを名前で取得する。

引数
name検索するArborFSMの名前。
戻り値
見つかったArborFSM。見つからなかった場合はnullを返す。

◆ FindFSMs() [1/2]

static ArborFSM [] FindFSMs ( GameObject  gameObject,
string  name 
)
static

GameObjectにアタッチされている同一名のArborFSMを取得する。

引数
gameObject検索したいGameObject。
name検索するArborFSMの名前。
戻り値
見つかったArborFSMの配列。

◆ FindFSMs() [2/2]

static ArborFSM [] FindFSMs ( string  name)
static

シーン内にある同一名のArborFSMを取得する。

引数
name検索するArborFSMの名前。
戻り値
見つかったArborFSMの配列。