はじめに
今回はVRChatで8個以上のエモートを実装する方法を紹介します。
この記事を見る事でVRChatアバターにエモートを入れる事ができます。
![](https://signyamo.blog/wp-content/uploads/2022/03/Animation_08.gif)
この方法では下記の2つが上手く設定できません。
・立ちと座りの状態でのエモートの変更
・AFKの終わりモーション
この2つを設定したい方は既存のVRChatのAction Layerを使用してください。
Action Layerについて
Action Layerは特定の”1つの決まったポーズ、アニメーション”を再生したい時に使うレイヤーです。
全てのボーンの動作に影響を与え、ポーズを上書きします。
なのでトラッキング処理などは完全に無効化されます。
=腕が動いたり移動の際歩いたりすることが無くなります。
前提条件
また、下記の3つを使えることを前提に進めます。
・VRC Avator Descriptor
・Playable Layers
・パイメニュー(Expressions Menu)
使い方はこちらをご覧ください。
下記のようなVRC Avator Descriptorとパイメニューが設定された状態で始めます。
VRC Avator Descriptorの設定はこちら
![](https://signyamo.blog/wp-content/uploads/2022/02/image-00.jpg)
パイメニューの作り方はこちら。
![](https://signyamo.blog/wp-content/uploads/2022/02/image-35-1.jpg)
用意するもの
事前に2つの物を用意する必要があります。
・エモート素材(アニメーション)
・EmoteBox(動かすための仕組み)
エモート素材の入手
こちらよりアニメーション素材をダウンロードします。
![](https://signyamo.blog/wp-content/uploads/cocoon-resources/blog-card-cache/3cbb979842cde6d4bf699a5bf9047f03.jpg)
DLした.unitypacckageをPtojectにドラッグ&ドロップ。
![](https://signyamo.blog/wp-content/uploads/2022/03/image-03-1.jpg)
Importを押します。
![](https://signyamo.blog/wp-content/uploads/2022/03/image-04-1.jpg)
これでエモート素材の入手が完了です。
自分で作りたい猛者はこちらを見ながら作ってください。
EmoteBoxの入手
エモートはAction Layerで動かします。
Action Layerを使うには複雑な条件分岐が必要になります。
そこでEmoteBoxというツールを使う事をおすすめします。
こちらよりダウンロードします。
![](https://signyamo.blog/wp-content/uploads/cocoon-resources/blog-card-cache/0e46fe0500b8879844244ce38445f788.jpg)
DLした.unitypacckageをPtojectにドラッグ&ドロップ。
![](https://signyamo.blog/wp-content/uploads/2022/03/image-35-1.jpg)
Importを押します。
![](https://signyamo.blog/wp-content/uploads/2022/03/image-36-1.jpg)
Necocoyaというファイルを使いやすい位置(ここではText_Exに移動)
![](https://signyamo.blog/wp-content/uploads/2022/03/image-05-1.jpg)
中を開くとEmoteBoxとEmoteSetが入ってます。
※作者が同じ方なので。
![](https://signyamo.blog/wp-content/uploads/2022/03/image-37-1.jpg)
Hierarchyでアバターを選択。
![](https://signyamo.blog/wp-content/uploads/2022/03/add-07.jpg)
VRC Avatar Descriptor → Playable Layersを開きます。
割り当てたMenuをクリック。
![](https://signyamo.blog/wp-content/uploads/2022/03/image-16-1.jpg)
Projectで強調表示されたメニューを選択。
![](https://signyamo.blog/wp-content/uploads/2022/03/image-38-1.jpg)
Inspectorを見ます。
下の方のActionを開きます。(無い場合はAdd Controlで作ってください)
TypeをSub Menuに変更。
![](https://signyamo.blog/wp-content/uploads/2022/03/image-51-3.jpg)
Project → Assets → Test_Ex → Necocoya → EmoteBoxにアクセス。
![](https://signyamo.blog/wp-content/uploads/2022/03/image-39-3.jpg)
EmoteBox_Main…をSub Menuの所にドラッグ&ドロップ。
![](https://signyamo.blog/wp-content/uploads/2022/03/image-40-1.jpg)
Hierarchyでアバターを選択。
![](https://signyamo.blog/wp-content/uploads/2022/03/add-07.jpg)
Project → Assets → Test_Ex → Necocoya → EmoteBoxにアクセス。
![](https://signyamo.blog/wp-content/uploads/2022/03/image-41-2.jpg)
Actionの所にEmoteBox_ActionLayerを入れます。
![](https://signyamo.blog/wp-content/uploads/2022/03/image-42-1.jpg)
ProjectでEmoteBoxのコントローラーをダブルクリック。
![](https://signyamo.blog/wp-content/uploads/2022/03/image-41-1.jpg)
Animatorを見るとエモートを再生する機構が出てきます。
![](https://signyamo.blog/wp-content/uploads/2022/03/image-43-1.jpg)
右上の島が立ちポーズです。(※座りはありません)
左下の島がAFKポーズです。
![](https://signyamo.blog/wp-content/uploads/2022/03/image-44-1.jpg)
EmoteBox_01-08をダブルクリック。
![](https://signyamo.blog/wp-content/uploads/2022/03/image-45-1.jpg)
開くと1~8のエモートを割り当てる仕組みが出てきます。
Emote_1を選択。
![](https://signyamo.blog/wp-content/uploads/2022/03/image-46-1.jpg)
Inspectorを見ます。
1~16までは既にアニメーションが割り当てられてます。
必要な方はMotionで割り当てるアニメーションを変更してください。
![](https://signyamo.blog/wp-content/uploads/2022/03/image-47-1.jpg)
Action-EmoteBoxを押します。
![](https://signyamo.blog/wp-content/uploads/2022/03/image-52-4.jpg)
元の階層に戻りました。
EmoteBox_17-24をダブルクリック。
![](https://signyamo.blog/wp-content/uploads/2022/03/image-53-1.jpg)
Emote_17を押します。
17~32のMotionはすべて20_APoseが割り当てられてます。
![](https://signyamo.blog/wp-content/uploads/2022/03/image-49-1.jpg)
もしアニメーションがあればMotionに割り当てます。
![](https://signyamo.blog/wp-content/uploads/2022/03/image-50-1.jpg)
この状態でVRChatにアップロード。
![](https://signyamo.blog/wp-content/uploads/2022/03/image-13-1.jpg)
これでSub Menuで8個以上のメニューが再生されるようになりました。
![](https://signyamo.blog/wp-content/uploads/2022/03/Animation_08.gif)
これでエモートの実装が完了です。
AFKモーションの設定
こちらよりポーズアニメーションをDL。
※素材は何でも大丈夫です。
![](https://signyamo.blog/wp-content/uploads/cocoon-resources/blog-card-cache/f5fed8de0b52204534a5cda14606c0b7.jpg)
DLした.unitypackageをProjectにドラッグ&ドロップ。
![](https://signyamo.blog/wp-content/uploads/2022/03/image-54-1.jpg)
Importを押します。
![](https://signyamo.blog/wp-content/uploads/2022/03/image-55-1.jpg)
ProjectでEmoteBoxのコントローラーをダブルクリック。
![](https://signyamo.blog/wp-content/uploads/2022/03/image-41-1.jpg)
コントローラーでAFKを選択。
![](https://signyamo.blog/wp-content/uploads/2022/03/image-56-1.jpg)
Inspectorを見ます。
MotionにAFKに使いたいアニメーションを入れます。
これでAFKのアニメーション置き換えが完了です。
![](https://signyamo.blog/wp-content/uploads/2022/03/image-57-1.jpg)
AFKに入る前のアニメーションはAfk lnitで設定できます。
・Motionでアニメーションを置き換え
・Goal Weightを1に変更
・Blend Durationを1に設定
![](https://signyamo.blog/wp-content/uploads/2022/03/image-58-1.jpg)
間の線を選択。
![](https://signyamo.blog/wp-content/uploads/2022/03/image-59-1.jpg)
先に上の所で幅を調整。
![](https://signyamo.blog/wp-content/uploads/2022/03/image-60-1.jpg)
次に下のAFKブロックを移動して切り替わりのタイミングを調整。
![](https://signyamo.blog/wp-content/uploads/2022/03/image-61-1.jpg)
Previewの再生ボタンを押すと切り替わりが確認できます。
※出てない方はバーを上の方に引き上げてください。
![](https://signyamo.blog/wp-content/uploads/2022/03/image-66-1.jpg)
これでAFKの入りとAFKアニメーションが設定できました。
![](https://signyamo.blog/wp-content/uploads/2022/03/Animation_13.gif)
※AFKの終わりモーションは設定できない
AFKの終わりはBlendOutで設定出来そうですが上手く行きません。
![](https://signyamo.blog/wp-content/uploads/2022/03/image-62-1.jpg)
入り → AFK中 → 解除までは再生されます。
![](https://signyamo.blog/wp-content/uploads/2022/03/Animation_11.gif)
しかし最後にこの状態になり全ての動作が無効になります。
![](https://signyamo.blog/wp-content/uploads/2022/03/Animation_12.gif)
既存のVRChatのアクションレイヤーの移植やVRC Animator Layer Controlの追加なども試しましたが治りませんでした。
AFKの終了アニメーションを設定したい場合は既存のVRChatのAction Layerを使ってください。
AFKの終了を設定したい方は少ないと思うので今回は省きます。
治り方が分かりましたら再度追記します。
まとめ
今回はAction Layerを使ってアバターにエモートを追加する方法を紹介しました。
他にも呼吸アニメーションの追加などを解説しています。
ぜひこちらもご覧ください。
コメント