【VRChat】8個以上のエモートとAFKの設定方法(Action)

VR
スポンサーリンク

はじめに

今回はVRChatで8個以上のエモートを実装する方法を紹介します。
この記事を見る事でVRChatアバターにエモートを入れる事ができます。

この方法では下記の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の
設定こちら

パイメニューの作り方はこちら

用意するもの

事前に2つの物を用意する必要があります。
・エモート素材(アニメーション)
・EmoteBox(動かすための仕組み)

エモート素材の入手

こちらよりアニメーション素材をダウンロードします。

(無料版) Emote詰め合わせ - VRChat Emote + Unity HumanoidAnimationClip - アンテナショップ【ねここや】 - BOOTH
Unity Animationファイル Emoteの詰め合わせ Ver'1.30 ----- 【バージョンアップ情報】 ●Ver'1.30(2021/12/22) ・新たに モーションを 9種類追加しました。 ・読み込みファイルの構成を変更しました。

DLした.unitypacckageをPtojectにドラッグ&ドロップ。

Importを押します。

これでエモート素材の入手が完了です。
自分で作りたい猛者はこちらを見ながら作ってください。

EmoteBoxの入手

エモートはAction Layerで動かします。
Action Layerを使うには複雑な条件分岐が必要になります。

そこでEmoteBoxというツールを使う事をおすすめします。
こちらよりダウンロードします。

【 EmoteBox 】VRChat Avatars3.0 ExpressionsMenu - アンテナショップ【ねここや】 - BOOTH
【 EmoteBox 】VRChat Avatars3.0 ExpressionsMenu Ver'2.00

DLした.unitypacckageをPtojectにドラッグ&ドロップ。

Importを押します。

Necocoyaというファイルを使いやすい位置(ここではText_Exに移動)

中を開くとEmoteBoxとEmoteSetが入ってます。
※作者が同じ方なので

Hierarchyでアバターを選択。

VRC Avatar Descriptor → Playable Layersを開きます。
割り当てたMenuをクリック。

Projectで強調表示されたメニューを選択。

Inspectorを見ます。
下の方のActionを開きます。(無い場合はAdd Controlで作ってください)
TypeをSub Menuに変更。

Project → Assets → Test_Ex → Necocoya → EmoteBoxにアクセス。

EmoteBox_Main…をSub Menuの所にドラッグ&ドロップ。

Hierarchyでアバターを選択。

Project → Assets → Test_Ex → Necocoya → EmoteBoxにアクセス。

Actionの所にEmoteBox_ActionLayerを入れます。

ProjectでEmoteBoxのコントローラーをダブルクリック。

Animatorを見るとエモートを再生する機構が出てきます。

右上の島が立ちポーズです。(※座りはありません)
左下の島がAFKポーズです。

EmoteBox_01-08をダブルクリック。

開くと1~8のエモートを割り当てる仕組みが出てきます。
Emote_1を選択。

Inspectorを見ます。
1~16までは既にアニメーションが割り当てられてます。
必要な方はMotionで割り当てるアニメーションを変更してください。

Action-EmoteBoxを押します。

元の階層に戻りました。
EmoteBox_17-24をダブルクリック。

Emote_17を押します。
17~32のMotionはすべて20_APoseが割り当てられてます。

もしアニメーションがあればMotionに割り当てます。

この状態でVRChatにアップロード。

これでSub Menuで8個以上のメニューが再生されるようになりました。

これでエモートの実装が完了です。

AFKモーションの設定

こちらよりポーズアニメーションをDL。
※素材は何でも大丈夫です。

〔無料版あり〕撮影用ポーズセット02〔Humanoid用〕 - -Silence- - BOOTH
VRChatでのサムネ等で使える撮影ポーズを16種類用意しました。 ※モデルデータ等は付属しておりませんのでご注意ください 無料版は8種類のみ、 有料版では全16種類と不定期なアップデートでポーズを追加する予定です。 久さまのCygnet(を元に作成しましたので、他アバターで使用する場合腕の位置ずれ等起こす可能性があり...

DLした.unitypackageをProjectにドラッグ&ドロップ。

Importを押します。

ProjectでEmoteBoxのコントローラーをダブルクリック。

コントローラーでAFKを選択。

Inspectorを見ます。
MotionにAFKに使いたいアニメーションを入れます。
これでAFKのアニメーション置き換えが完了です。

AFKに入る前のアニメーションはAfk lnitで設定できます。
・Motionでアニメーションを置き換え
・Goal Weightを1に変更
・Blend Durationを1に設定

間の線を選択。

先に上の所で幅を調整。

次に下のAFKブロックを移動して切り替わりのタイミングを調整。

Previewの再生ボタンを押すと切り替わりが確認できます。
※出てない方はバーを上の方に引き上げてください。

これでAFKの入りとAFKアニメーションが設定できました。

※AFKの終わりモーションは設定できない

AFKの終わりはBlendOutで設定出来そうですが上手く行きません。

入り → AFK中 → 解除までは再生されます。

しかし最後にこの状態になり全ての動作が無効になります。

既存のVRChatのアクションレイヤーの移植やVRC Animator Layer Controlの追加なども試しましたが治りませんでした。

AFKの終了アニメーションを設定したい場合は既存のVRChatのAction Layerを使ってください。

AFKの終了を設定したい方は少ないと思うので今回は省きます。
治り方が分かりましたら再度追記します。

まとめ

今回はAction Layerを使ってアバターにエモートを追加する方法を紹介しました。
他にも呼吸アニメーションの追加などを解説しています。

ぜひこちらもご覧ください。

コメント

タイトルとURLをコピーしました