前回の記事はこちら
検証バージョン
Unity 2017.1.1p1
Arbor 2.1.7
ParameterContainer
ParameterContainerの役割
ParameterContainerは複数のArborFSMから参照、更新するための変数を保持するためのコンポーネントです。
複数作成することもできますが、グローバル変数のようなものなので、無計画に増やしすぎると管理しづらくなるので注意してください。
GameObjectに追加して作成します。
空のGameObjectと一緒に作成することもできます。
パラメータの追加方法
右上にある+をクリックしてメニューを出し、追加したいクラスを選択するだけです。
パラメータの種類
よく使うクラスは一通りそろっているので、自分で拡張する必要は恐らく無いと思います。
Quaternionは内部ではw,x,y,zの4変数で持っている物を変換してx,y,zのオイラー回転で表示しているので直接入力すると若干ズレることがあります。
基本的にQuaternionは手作業で修正するものではないので、Arborやスクリプトから直接Quaternionとして操作した方が良いでしょう。
GlobalParameterContainerの役割
GlobalParameterContainerは、ParameterContainerをシーンを跨いで使用したいときに使います。
ParameterContainerと同じように変数を持つのではなく、ParameterContainerを管理する感じです。
まず、ParameterContainerをPrefab化する必要があります。
そして、Prefab化したものを登録します。
シーン起動時に存在しなければ自動で作成され、存在していれば何も起こりません。
複数のシーンで使用するものは初期化のタイミングや重複などに気を付けないといけないのですが、Prefab化してGlobalParameterContainerを使用するとその煩わしさを回避できます。
ParameterContainerの実際の使い方などは、また別途記事を作成したいと思います。