Avatars3.0のAFKのポーズを変更する
はじめに
VRChatのAvatars3.0でAFKモードが追加されました。
HMDを外すかEndキーを押すことでAFKモードになって、
デフォルトだとアバターが座禅を組んで浮いている状態になります。(なぜ...)
本記事ではこのAFKモードでアバターがとるポーズを変更する方法を書きます。
AFKのポーズを変更した pic.twitter.com/Hxx0eeVozt
— がとーしょこら (@gatosyocora) 2020年8月7日
手順を概要的にまとめて、その後詳細に書いています。
自分に合ったほうを見ていただけると良いかと思います。
ねここやさんが配布されているポーズアニメーションを例に説明していきます。
オススメの商品です。
necocoya.booth.pm
動作確認環境
- Unity 2018.4.20f1
- VRCSDK3-AVATAR-2020.08.06.16.30_Public.unitypackage
変更する手順
- vrc_AvatarV3ActionLayer.controllerを複製する。
- 1で複製したAnimatorControllerのAfk Init, AFK, BlendOutのStateのMotionに以下のようなAFKアニメーションのAnimationClipを設定する.
- LoopTimeがtrue
- 0フレーム目にのみAFKのポーズをしたHumanoidのアニメーションキーを持つ
- VRCAvatarDescriptorのPlayable LayersのActionに1で複製したAnimatorControllerを設定する
変更する手順(詳細版)
1. AnimatorControllerの複製と設定
Assets/VRCSDK/Examples3/Animation/Controllersのvrc_AvatarV3ActionLayerを複製します。
選択した状態でCtrl+Dで複製できます。
そのアバター用であることがわかる名前に変更して、別のフォルダに移動しておきましょう。
次に複製したものをVRCAvatarDescriptorのPlayable LayersのActionに設定します。
次に設定したAnimatorControllerをダブルクリックして選択状態にします。
そして、Animatorタブを開きます。
AnimatorタブはWindow>Animation>Animatorで開けます。
Animatorタブには選択したAnimatorControllerの内容が表示されていると思います。
2. AFKアニメーションの選択と設定
AnimatorControllerにあるAfk Init, AFK, BlendOutというStateに設定したいAFKアニメーションを設定します。
どのAFKアニメーションを使うか決めるときにプレビューを見ると良いです(詳細)。
それぞれクリックするとInspectorがそのStateの詳細が表示されます。
Motionに設定したいAFKアニメーションのAnimationClipを設定します。
Afk Init, AFK, BlendOutすべてのMotionに同じAnimationClipを設定してください。
設定したMotionをダブルクリックして設定したAnimationClipを選択状態にします。
すると, InspectorにAnimationClipの詳細が表示されます。
Loop Timeにチェックがない場合、チェックを入れます。
AnimationClipが選択された状態でAnimationタブを開きます。
Window>Animation>Animationで開けます。
60:00のほうにある一番上のひし形を選択して、60:00のひし形すべてを選択します。
Deleteキーを押して選択したひし形をすべて削除してください。
0:00のみにAnimationキー(ひし形)がある状態にします。
これで変更が完了しました。
実際にアップロードしてAFKを試してみましょう。
番外:AFKアニメーションを選ぶ
Humanoidボーンを変更するAnimationClipを選択すると,
Inspectorの下部に実際のモーションが表示されます。
こうなっている場合は灰色部分にカーソルを合わせて上に持ち上げると,
実際のモーションのプレビューが表示されます。
ここにHierarchyにあるアバターのモデルをドラッグ&ドロップすると
プレビューされている3Dモデルがそのアバターになるので選ぶときにいい感じになります。