アバター改変-Unity PR

【Unity】VRChatで小物を出し入れする方法まとめ+α

先日ふと思いついて、『寝るアニメーション』と『布団の3Dモデル』を組み合わせてみました。

結果はめっちゃ可愛かったので、やり方をシェアしようと思います。

ざっくり説明すると、

  1. アバターが寝た時に、ピッタリの位置に布団がくる設定
  2. 小物(枕・布団)を出し入れする設定
  3. アバターを寝かせる設定

をそれぞれ行う必要があります。

この方法を一度理解すれば、

  • あなたの好きな3Dモデル(小物)と、
  • アニメーションで、
  • 無限の組み合わせが楽しめる

ようになります。

理想のポーズで写真撮影をしてみませんか?

それぞれの設定は簡単なので、初心者の方向けに説明します。

 

この記事は、

  • Unityはインストール済み
  • VRChatのアバターをアップロードした経験がある(1回でもOK)

という方が対象です。

Unityってなに?

という方はこちらの記事をご覧ください。

【VRChat初心者向け】アバター3.0でアニメーションを導入する方法まとめ 先日BOOTHから無料でダウンロードした、『キョンシー移動モーション』をアバターに導入して遊んでみました。 両手を前に出し...

Unityに初めて触れる方向けに、Unityのインストールからアニメーションの導入、アバターのアップロードまで丁寧に解説しています。

※この記事はアバター3.0を前提に解説します。(アバター2.0とは設定が異なるのでご注意ください)

 

2021/6/15 「仮眠セット」が新しくなりました!!

【VRChat】自動で小物を出し入れ!AFKモーションの設定方法まとめ  2022/2/15 加筆・修正しました。 この記事はAFKモーションが作動すると同時に、 小物(枕・布団)...

仮眠セットを導入される方は、新しい導入マニュアルをご覧ください。

 

【Unity】アバターと小物(3Dモデル)の位置を合わせる方法

(今回も狐雪ちゃんを使って説明します!)

設定の流れは以下の通りです。

  1. BOOTHで素材を入手
  2. Unityを起動してアバターと素材をインポート
  3. アバターが寝た時に、ピッタリの位置に布団がくるよう合わせる
  4. 小物(布団)を出し入れする設定
  5. アバターを寝かせる設定(AFKモーションなど)
  6. アバターをアップロード

という流れになります。

完成すると、

このようにアクションメニューから、

  • 枕と布団
  • 寝るアニメーション

をON・OFFで切り替えられるようになります。

まずは③まで進めます。

 

①BOOTHで素材を入手

今回はこの素材を使って解説します。

このセットには、

  • 布団
  • 寝るアニメーション

が全部入っています。

布団にVRChatで撮影した写真を入れて、あなただけの『オリジナル掛け布団』を作ることができます!

詳しくはこちらからご覧ください。↓

【AFK】離席モーション15 仮眠セット – Eagle – BOOTH

あなたの好きな素材を使って進めてね! 

 

②Unityを起動してアバターと素材をインポート

アバターのアップロードに必要なファイルをインポートしてください。

完了したら、アバターのprefabをHierarchyに入れます。

③アバターが寝た時に、ピッタリの位置に布団がくるよう合わせる

  1. 『Assets』の中で右クリック
  2. 『Create』→『Animator Controller』をクリック
  3. 『Animator Controller』をアバターに設定
  4. Animator画面でアニメーションファイルを設定
  5. 『Window』から『Animation』を選択
  6. アニメーションを再生させて3Dモデルを合わせる
  7. アバターのBoneの中に3Dモデルを入れる

という手順で行います。

細かく分けているだけだから、すぐ終わるよ! 

 

まず『Assets』の中で右クリックをして、『Create』→『Animator Controller』を選択します。

次にHierarchyの中のアバターを選択して、追加した『Animator Controller』をマウスで掴んで入れます。

入れた『New Animator Controller』をダブルクリックして、Animator画面に移ります。

Animator画面に切り替わったら、設定したいアニメーションファイルを、マウスで掴んで中に入れます。

『Scene』をクリックして最初の画面に戻ります。

『Window』から『Animation』を選択し、アニメーションを再生できる状態にします。

 

『Preview』をクリックすると、Animator画面で設定したアニメーションが再生されます。

アニメーションを再生させたままの状態で、Hierarchyに3Dモデル(枕と布団)のprefabを入れて、位置を合わせます。

3Dモデルの位置が決まったら、アバターのBoneの中に3Dモデルのprefabを入れます。

入れ方は簡単です。

  1. Hierarchyに入れたアバターの▽をクリック
  2. Armatureの▽をクリック

すると、各部位の名前がズラリと出てきます。

今回は、

  • 枕は『Head』
  • 布団は『Spine』

に入れることにしました。(狐雪ちゃん以外のアバターは、名称が異なる場合があります。)

それぞれのBoneを発見したら、枕・布団のprefabを、マウスで掴んでBoneの名前の上に重ねて離します。(ドラッグ&ドロップ)

↓こんな感じです。

入れるところを間違えたら、キーボードのCtrl + Z で1つ前の状態に戻れるよ! 

Boneの中に入れる作業をすることで、

  • アバターと3Dモデルが別々の状態だったものが、
  • Boneの中に入れることで、
  • アバターの体の一部になる

ということです。

この状態でVRChatにアップロードした場合、

  • 枕を『Head』に入れたので、
  • 頭を動かすと、
  • 頭と一緒に枕も動く

という状態になっています。

ですので、基本的には「3Dモデルを合わせた位置と同じBoneの中に設定する」と考えてもらえればOKです。

入れるところがわからない人は、適当なBoneに入れて、試しにアップロードしてみてください。

入れるところを間違えて、VRChatにアップロードしたらどうなるの? 
3Dモデルが変なところに表示されるだけだから、Unityで別のBoneへ入れ直せば解決するよ! 

 

【VRChat】アバター3.0で小物を出し入れする方法

このままアップロードすると、枕と布団が出しっぱなしになってしまいます。

それでは邪魔なので、アクションメニューからのON・OFFで、出し入れができるように設定します。

この設定をすることで、

  • 布団が必要な時に出す(ON)
  • 不要な時はしまう(OFF)

ということが可能になります。

ポイントは、

  • 小物の出し入れもアニメーションである

ということです。

アニメーションと聞くと、上述したような、

  • アバターが寝ころんだり、
  • ダンスを踊ったり

するイメージですよね。

小物の出し入れの場合は、

  • 普段は小物が見えない状態(OFF)から、
  • 小物を見えるようにする(ON)

という動作をするアニメーション…となるわけです。

「ふ~ん」でOKだから、説明に入るね! 

作業は、

  1. 『Preview』をクリックしてアニメーションを止める
  2. 小物の出し入れアニメーションを作る
  3. FXレイヤーの編集
  4. パラメータの編集
  5. アクションメニューの編集

という流れになります。

編集といっても簡単なので安心してね! 

 

①『Preview』をクリックしてアニメーションを止める

『Preview』をクリックしてアニメーションを止めてください。

T字のポーズになったところでアバターを選択します。

アバターの『Animator』の端にある○を押して、『None』に変更します。

 

②小物の出し入れアニメーションを作る

次に小物を出し入れするアニメーションを作ります。(めっちゃ簡単です)

まず、

  1. 『Assets』の中で右クリック
  2. 『Create』→『Animation』を追加

してください。

アニメーションファイルの名称は、出し入れしたい小物の名前をつけます。

今回は枕と布団を別々に設定します。(面倒な人は2つ一緒に出し入れしてもOK)

まず枕から設定するので、『makura』と名付けます。

文字は半角で入力してください。(日本語はバグる可能性あり)

アニメーションファイルを右クリックして、『Rename』を選択して名前を変えてね! 

『makura』のファイルをHierarchyの、アバターの名前の中に入れます。

次に先ほど使用したAnimationタブを開いて、『Preview』の下が、『makura』になっているか確認します。

『makura』になっていない場合は、

  1. Hierarchyのアバターを選択
  2. アバターの『Animator』の項目を見て、
  3. 『Controller』の項目(狐雪の場合 SDK3.0Koyuki)を、
  4. 右端の○を押して、『None』に変更します

『makura』をHierarchyのアバター名に重ねた時に、アニメーターファイルが自動的に作られているので、そのファイルを『None』の中に入れてください。

そのあともう一度、Animationタブを確認して、『Preview』の下が『makura』になっていればOKです。

 

ここからが重要なのですが、小物の出し入れアニメーションを作る時に、

  • (A)通常時は出しっぱなしにしておいて、邪魔な時だけ消したい
  • (B)普段はしまっておいて、必要な時だけ出す

という2つのパターンがあります。

  • (A)は眼鏡や帽子など、身に着けるアクセサリー
  • (B)は剣や杖などを手に持ちたい時

というイメージで考えてください。

今回の枕と布団は、必要な時以外は邪魔なので、(B)のパターンで作ります。

小物の出し入れアニメーションを作る時に、

  • (A)はアニメーションを録画する時にチェックを外す
  • (B)は録画する前にチェックを外しておき、録画中にチェックを付ける

という違いがあります。

今は理解できなくてもOKだから、次に進んでね! 

今回は(B)のパターンなので、アバターのBoneに入れた枕を選択して、チェックを外します。(重要)

 

次に赤色のを押して、録画状態にします。

アバターのポーズが変化しますが、問題ありません。

ここで他の部分をクリックすると画面が変わってしまうので、端の小さな鍵マークをクリックします。

(鍵マークが無い人は、写真のようにLockを選択しておく)

 

ここで事前に消しておいた、makuraのprefabを選択し、チェックを付ける。

アニメーションに◇のマークと、『makura : Game~』というのが追加されたのを確認したら、再び赤色のを押します。

Hierarchyのアバターを選択して、アバターのAnimatorの項目を見ます。

右端の○を押して、再び『None』に戻します。

これでアニメーションファイルの編集は完了です!

お疲れ様でした! 

 

③FXレイヤーの編集

次にレイヤーの編集作業をします。

『アバター3.0でアニメーションを導入する方法』を読んでくださった方は、『Action』レイヤーに馴染みがあると思います。

が、今回編集するのはFXレイヤーです。

違いをざっくり説明すると、

Actionレイヤー

  • 動作のあるアニメーション
  • ダンス、寝転ぶ など
  • 再生中のアニメーションに身を任せるイメージ
FXレイヤー

  • 小物の出し入れ
  • 手に剣を持つアニメーションを再生させつつ、
  • 手足を自由に動かす…といった使い方

に分けられます。

  • Actionレイヤーは、アバターの体全体にアニメーションを適用させる…というイメージ。
  • FXレイヤーは体の一部だけに、アニメーションを再生させる

というものだと考えてください。

(※僕の解釈なので、間違いがあるかもですが、ここでは上記のように考えてもらえたら嬉しいです。)

 

Hierarchyのアバターを選択して、

  • VRC Avatar Descriptor(Script)の中の、
  • Playable Layers の中から、
  • FXの欄を見て、
  • KoyukiFX(狐雪の場合)をダブルクリック

します。

(※FXレイヤーの画面はアバターごと異なると思いますが、やることは同じです。)

  • 『Parameters』を押して、
  • +をクリックし、
  • 『Int』を選択

して新規のデータを作成します。

データの名前を分かりやすく『makura』に設定します。(短い名前がおすすめ)

 

次に、

  • 『Layers』を押して、
  • +をクリックすると、

『New Layers』が出るので、名前を『makura』に設定します。

この名前は、『Parameters』で作ったデータの名前と、同じ名前を設定する必要があります。

名前が1文字でも違うと、バグってアニメーションが動きません。

繰り返しますが、短くわかりやすい名前がおすすめです。

次に、

  • 名前の横にある歯車マークをクリックして、
  • 『Weight』を0→1に変更

します。

次に、

  • 右クリックから、
  • 『Create State』→『Empty』を選択

すると、オレンジ色の『New State』が出てきます。

次にAssetsの中から、先ほど作った『makura』のアニメーションファイルをマウスで掴んで、『New State』の横に入れます。

『New State』を右クリックして、『Make Transition』を選択して、写真のように繋ぎます。

繋ぎ方は、

  1. 『New State』→『makura』
  2. 『makura』→『Exit』

という順番になるよう、写真を見て真似してください。

 

矢印が繋がったら、

  • 『New State』→『makura』に繋いだ矢印をクリックして、
  • 『List is Empty』の+をクリック
  • 『GestureLeft』を『makura』
  • 『Greater』を『Equals』
  • 数値を0から1へ※

にそれぞれ変更します。

※この1は『1つ目』という意味だと思ってください。

枕に続いて、布団も設定する場合、『2つ目』の設定だから数値は2となります。

この設定をミスすると、アニメーションが再生されないから注意してね 

 

同じように、

  • 『makura』から『Exit』に繋いだ矢印をクリックして、
  • 『List is Empty』の+をクリック
  • 『GestureLeft』を『makura』
  • 『Greater』を『Equals』
  • 数値は0のまま(変更しない)

としてください。

ここの数値は毎回必ず0で終わるよ 
これでFXレイヤーの設定は完了だね! 

 

④パラメーターの編集

  • 『Scene』をクリックして最初の画面に戻ります
  • 『Hierarchy』のアバターを選択して、
  • 『Expressions』から、
  • 『Parameters』の欄の、
  • 『KoyukiParameters』をダブルクリック

します。

(※アバターごと名称が異なりますが、問題ありません)

パラメーター画面に移ったら、

  • Parameter1~16の空いてるところに、
  • 上から詰めて、
  • makura(FXレイヤーで入力した名前)を入力します

名前の横は『Int』になっているか確認します。(FXレイヤーの編集で、データをIntで作っているので)

パラメーターの編集はこれで終わりです。

 

⑤アクションメニューの編集

最後にVRChat内で手軽にON・OFF操作ができるように、アクションメニューの編集をします。

Hierarchyのアバターを選択して、

  • 『Expressions』から、
  • 『Menu』の欄の、
  • KoyukiMenuをダブルクリック(アバターごと名称が異なる)

します。

  • 『Add Control』をクリックして新規を出す
  • 『Name』を枕に変更(日本語OK!)
  • 『Type』を『Toggle』に変更
  • 『Parameter』を『makura, Int』に変更
  • 『Value』をに変更※

してください。

※Valueの数値は、『New State』→『makura』に繋いだ矢印に設定した数値と同じにします。

今回は1つ目の設定なので数値は1です。

しかし枕に続いて、布団の出し入れ設定を行う時は、2つ目の設定なので、数値は2と入力します。

※布団の3Dモデルも、枕と同じように設定してみてください。(説明は割愛します)

FXレイヤー同様、数値の入力ミスが不具合に繋がるから注意してね 
これでアクションメニューの編集も完了だね! 

 

【Unity】VRChatのAFKモーションを設定する方法

最後にアバターを寝かせる方法をお伝えします。

結論から言うと方法は2つあって、

  1. AFKモーション(離席中のポーズ)
  2. アクションメニューからのON・OFF

という感じです。

今回は①の『AFKモーション』に設定する方法をお伝えします。

②の『アクションメニュー』に設定する方法は、こちらの記事で詳しく解説しています。

【VRChat初心者向け】アバター3.0でアニメーションを導入する方法まとめ 先日BOOTHから無料でダウンロードした、『キョンシー移動モーション』をアバターに導入して遊んでみました。 両手を前に出し...

アクションメニューに設定すれば、小物の出し入れと同様に、好きなタイミングで寝かせる(アニメーションを再生させる)ことができます。

AFKモーションの設定はめっちゃ簡単なので、サクッとお伝えします。

①vrc_AvatarV3ActionLayerを開く

アバターを選択した状態で、

  • 『VRC Avatar Descriptor(Script)』の中の、
  • 『Playable Layers』の『Action』から、
  • 『vrc_AvatarV3ActionLayer』を選択

します。

『Action』の欄の、『Default Action』となっているところをクリックしてください。

すると、『None』と表示されると思います。

『None』の右端に小さな○があるので、そこをクリックします。

ズラリと表示される中から、『vrc_AvatarV3ActionLayer』を探して選択します。

紛らわしい名前が多いから、よく見て慎重に選択しようね 
『vrc_AvatarV3ActionLayer』をダブルクリックして、アニメーター画面に移ってね! 

②アニメーションファイルを設定する

Animator画面に移ったら、

  • Assetsを見て、
  • 枕と布団を合わせた時に再生したアニメーションファイルを、
  • 『AFK Init』
  • 『AFK』
  • 『Blend Out』
  • それぞれの『Motion』の中に入れる

ところまで進めます。

『AFK Init』をマウスでクリックして、アニメーションファイル(枕・布団の位置を合わせたアニメーション)を、マウスで掴んで、『Motion』の中に入れる…という感じです。

3つとも同じアニメーションファイルを入れたら完了です。

設定はこれでおしまいだね~ 
お疲れ様!VRChatにアップロードして、動作確認してみようね! 
【VRChat初心者向け】アバター3.0でアニメーションを導入する方法まとめ 先日BOOTHから無料でダウンロードした、『キョンシー移動モーション』をアバターに導入して遊んでみました。 両手を前に出し...

↑こちらの記事にも、

  • アニメーションと小物を合わせる別のやり方(手順)
  • 不具合の解決策(アニメーションが再生されないなど)
  • 超初心者目線の手引き

を載せています。

合わせて参考にしてください。

まとめ:VRChatで小物を出し入れする方法

  1. アバターが寝た時に、ピッタリの位置に布団がくる設定
  2. 小物(枕・布団)を出し入れする設定
  3. アバターを寝かせる設定

についてまとめました。

今回お伝えした手順を応用することで、

  • BOOTHの無料素材を組み合わせたり、
  • 自分でアニメーションや小物を作った場合

に無限の組み合わせで遊ぶことができます。

解説を読みながら設定するのは、ぶっちゃけ面倒だったと思うのですが、3~4回繰り返すうちに覚えられると思います。

説明は以上です。

おしまい。

COMMENT

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA