ななさいの備忘録

備忘録がわりです

アバター3.0 表情プリセットの変え方

前程知識

  • FXレイヤーで表情設定ができること
  • ExpressionMenuの設定ができること(一応簡単に説明します)

方法

1. ハンドレイヤ―の複製

まずは左手から

表情設定はおそらく基本的な状態だと下記画像のようになっていると思います。

f:id:ChameleonO2:20200814140848p:plain
FXレイヤー Left Hand

このレイヤー複製します。

詳細手順

  1. レイヤ―の右上らへんにある[+]ボタンでレイヤーを新規作成し、名称を分かりやすい名前に変更する。
  2. LeftHandの中身を全選択してCtrl-Cでコピーして新規作成したレイヤーに張り付ける。
  3. Idleを[右クリック]して[Set as Layer Default State]を選択。

f:id:ChameleonO2:20200814141916p:plain
複製したレイヤー

複製したレイヤーのWeightを0にします(デフォルトで0になっていると思いますが)。

f:id:ChameleonO2:20200814141810p:plain
Hand1レイヤーのウェイト

右手も同様にします。(画像省略)

レイヤーの順番は下記のようにします。(順番はleftの下にRightがあれば問題ありません。)

f:id:ChameleonO2:20200814150510p:plain
レイヤーの順番

2. 状態遷移の設定

2.1 Stateの作成・設定

新しいレイヤーを作ります。名称は任意ですが、今回は「FaceControl」とします。 「FaceControl」レイヤーのWeightを1にします(アニメーションが絡まないので必要なさそうですが念のため)。

f:id:ChameleonO2:20200814142942p:plain
FaceControl Weight

レイヤー内の濃い灰色部分で[右クリック]→[Create State]→[Empty]でStateを2つ作成します。

f:id:ChameleonO2:20200814143222p:plain
Stateを用意する。

名称は同じく任意です今回はStateの名称を「Face0」「Face1」とします。

f:id:ChameleonO2:20200814144544p:plain
State

「Face0」を選択し、[Inspector]から[Add Behaviour]→[VRCAnimatorLayerControl]を選択します。

f:id:ChameleonO2:20200814144939p:plain
VRCAnimatorLayerControl

これを合計2つ選択用意して下記のように設定します。

f:id:ChameleonO2:20200814150732p:plain
Face0の設定

次に「Face1」を選択し、同様に[VRCAnimatorLayerControl]を二つ用意して下記のように設定します。

f:id:ChameleonO2:20200814151134p:plain
Face1の設定

これは「Face0」状態の時は「LeftHand1」と「RightHand1」のWeightが0になるようにしています。

逆に「Face1」状態の時は「LeftHand1」と「RightHand1」のWeightが1になるように設定しています。

2.2 パラメータの作成

Animatorのパラメータを新たに作成します。

Layersの隣にある[Parameters]を選択後、プラスボタンで新たな変数を作成します。作成するときは[Int]を選択します。

変数の名前はもちろん任意です。今回は「FaceToggle」としました。初期値は0です。

f:id:ChameleonO2:20200814151827p:plain
パラメータの作成

2.2 条件の設定

Layersタブに戻り、先ほど作成した「Face0」と「Face1」に状態遷移するための設定を行います。

「Any State」を[右クリック]して [Make Transition]を選択します。

f:id:ChameleonO2:20200814152404p:plain
Make Transition

そうすると線が伸びるので「Face0」に伸ばしてやります。

同様に「Face1」にも伸ばして下記画像のようにします。

f:id:ChameleonO2:20200814152520p:plain
状態遷移設定

次に 「Face0」に伸びている線を選択します。

[Inspector]から「List is Empty」と書かれた項目の[+]を選択します。

f:id:ChameleonO2:20200814152822p:plain
条件のInspectorの設定

下記のように項目を設定します。

f:id:ChameleonO2:20200814153052p:plain

次に 「Face1」に伸びている線についても同様に条件を追加して下記のように設定します。

f:id:ChameleonO2:20200814153139p:plain

つまり、「FaceToggle」の値が0の時は「Face0」に、1の時は「Face1」に遷移するように設定しました。

ExpressionMenuの設定

ここはある程度端折って説明します。

任意のディレクトリでExpressionMenuとParameterを作成します(すでに用意している場合はそれを使用して構いません)。

f:id:ChameleonO2:20200814153516p:plain

Parametersの設定に先ほどAnimatorで設定した変数名と同じ変数を用意してやります。 f:id:ChameleonO2:20200814153649p:plain

ExpressionMenuでは[Add Control]から「Type」を[Toggle]、「Parameter」を[FaceToggle]、「Value」を1にします。

あとはアバターの設定に組み込んで作業完了です。

f:id:ChameleonO2:20200814154034p:plain