Parameters
Modular AvatarのParameters コンポーネントで、ギミ ックが内部で使ってたり、外とやり取りするためのパラメーターを定義できます。 衝突を避けるために名前を変更したり、同期・非同期パラメーターとその初期値を設定できます。
いつ使うもの?
VRChatが提供するパラメーター以外の、自分で定義するパラメーターを使うギミックを作る際に使います。
使い方
MA Parametersリストの各エントリーは、一つのパラメーター、またはVRChatのPhysBoneの前置詞を指定します。上段に名前(または前置詞)を、 その横にパラメーターの型を設定します。
パラメーター型
右上のパラメーター型欄には、以下のいずれかを設定できます。
- Bool
- Int
- Float
- Animatorのみ
- PB前置詞
「Animatorのみ」を選択すると、そのパラメーターはExpressions Parametersリストに追加されません。ただし、下記の名前変更はできます。
「PB前置詞」設定は、このパラメーター前置詞がPhysBonesコンポー年tおに設定されている場合に使います。Animatorのみと同様、Expressions Parameters リストに は追加されません。
パラメーターのリネーム
「名前を変更」欄に新しい名前を入れると、そのパラメーターはMA Parametersオブジェクトとその子の外ではその名前として扱われます。これは、 異なるギミック間の衝突を避けるために使ったり、逆に同じパラメーターを使って二つのギミックを連動させるために使うことができます。
「自動リネーム」をクリックすると、使われていない名前が自動的に選択されます。
初期値
各パラメーターには初期値を設定できます。この値はアバターをリセットしたときに使われます。初期値を空欄にすると、アバターのExpressions Parameters アセットに設定された値が使われます。それもない場合は、0(またはfalse)が使われます。
「アニメーターでの初期値を設定」を有効にすると、アニメーターコントローラーの初期値を上書きします。一部複雑なギミックを作る際に便利です。 「Animatorのみ」を選択して初期値を設定した場合は、この設定は無視され、常にアニメーターコントローラーの初期値が上書きされます。
保存・同期
「保存する」設定は、パラメーターがアバター変更やVRChat再起動時に保存されるかを設定します。
「同期する」設定は、パラメーターがネットワーク経由で同期されるかを設定します。この設定をクリアすると、パラメーターはネットワーク上での パラメーター数を消費しません。
パラメーターの新規作成
新規のパラメーターを作る方法がふたつです。まず、リストの下の「+」を押してから、作られたパラメーターの左の▶を押して、パラメーター名を 記入することです。
また、「未登録パラメーター」のところを開いて登録することもできます。このリストには、このオブジェクトとその子で検出されている未登録 パラメーターがリストアップされます。「追加」を押せばワンクリックで登録できるし、虫眼鏡牡丹をクリックすると検出された場所が表示されます。
どのみち、パラメーターを作ったら▶を押せば詳細画面を開けます。そこで同期状態をつかさどるパラメーター型を設定したり、その他詳細設定ができます。
入れ子にする
MA Parametersコンポーネントは入れ子状態にできます。これで複雑なシステムを、複数のモジュールから組み上げることができます。 MA Parametersコンポーネントはそれぞれ、その子に名前変更を施します。例えば、中のほうのMA Parametersが「hoge」→「piyo」でリネームし、 外が「piyo」を自動リネームするとしたら、その 間のオブジェクトでは「piyo」としてアクセスできます。
入れ子にした場合の特別の取り扱いが一部あります。
- 「保存する」設定は、親側で登録された設定を優先します。ただし、入れ子になってないMA Parametersで「保存する」設定が異なる場合は、 どれか一つでも「保存する」が有効になった場合は有効になります。
- 「初期値」設定は、親側で登録された設定を優先します。ただし、親の設定が空欄の場合は子の設定を考慮する。なお、入れ子になってない状態で 「初期値」設定が異なる場合は初期値が不定になるため注意が表示されます。