こんにちは!サキナオコです^o^
寒いですけど、なんだか春の日差し。
さて、揺れ物設定のためのあれこれを記しておきます。
Blenderでの作業
*ボーンに揺れ物ボーンを後付けしてオブジェクトと関連づけたい場合
アバターの骨以外全部結合しちゃってる場合は追加したボーンに連動して動いて欲しい頂点を編集モードで選択しておく(振袖だったら袖部分。袖だけ部分選択。頂点グループに追加しておけば何度も選択しなおさなくていいのでラク。でも使用後は頂点グループから削除したほうがいいかも)
- 編集モードで追加したボーンを選択
- オブジェクトモードで揺れ物オブジェクトを選択(全体でおけ)
- ウェイトペイントモード
- 上部メニュー→ウェイト>ボーンから自動割り当て
- 頂点グループが追加されるので一応確認しておかしなウェイトを塗りなおす
Unity、VRM1.0での揺れ物設定
A.まず、揺れ物の1つの束のつながりを設定する
- Alt+左クリックで揺れ物Boneの根本をクリック→Boneの末端まで表示→Shift+左クリックでまとめて選択
*1つの束をまとめて、「~.end」まで全部 - その後「Add Component」→VRM10 Spring Bone Jointを追加
B.揺れ物がぶつかるコライダー設定(揺れ物が突き抜けてほしくないところ。振袖でいうと胴や足部分)
- Hierarchy上でコライダーを付けたいBoneを右クリック→「Create Empty」を選択、右クリック→「Rename」で部位など(Leg_Up_Rとか)のわかりやすい名前つけておく
- 1を選択、Inspector上の「Add Component」→VRM10 Spring Bone Collider 追加
- Collider Typeから当たり判定を付けたい部分に近いCollider Type(どれがいいのかよくわからないけどCapsule選択してRadius小さくした)を選びサイズと位置(Transformにて)を調整
C.作成したコライダーを新たなファイルsecndaryに設定
- アバターを右クリック→「Create Empty」選択、作成した空のGameObjectを右クリック→Renameで名前を「secondary」に変更
- secondaryに「Add Component」からVRM10 Spring Bone Collider Groupを追加
- Name項目にわかりやすい部位の名前(head、hand、chest等)を付ける
- Bで作成した部位ごとのコライダー(Shift+左クリックで同部位まとめて追加可)をColidersにドラッグドロップ
D.アバターのInspectorに設定
- アバターのInspector→VRMInstanceのSpring Bone項目内
「Collider Groups」文字にCで設定したVRM10 Spring Bone Collider Groupコンポーネントをドラッグドロップ - Spring Bone項目内「Springs」の右下にある「+」をSpring Boneの房数押し追加、「Name」のところにわかりやすい房ごとの名前をつける
(*ここで問題発生!25/01/15バグかなんかわからないけど+を押すとウィンドウが重なって表示されてしまい入力が非常に難しくなります。根気と気合、知恵と工夫で乗り越えて!*房ごとの枠を下にずらしながら入力すると入力できる) - Shift+左クリックでアバター下のBoneをまとめて選択(~.endまで)、「Joints」部分にドラッグアンドドロップでまとめて追加
- ここまででいいけれど、更に束ごとのコライダーを指定したい場合、secondaryファイル選択、Cで作成したコライダーのコンポート名を指定したいJointsの上のCollider Groupsにドラッグドロップ
E.これで揺れるはず
- 再生ボタンを押す、揺れない場合一時停止ボタンを押してSceneタブを押す
- 再生しながらVRM10 Spring Bone Joint内のJoint Settingsの数値調整を行い、良ければ数値をコピーして再生を切ってからJoint Settingsにコピペ(再生中の数値は切ると消えてしまうため)
ていうことらしいんですけど、うまくいけばこれにシェイプキーなど登録して、あとはVRMファイルをエクスポートすれば、clusterのアバターアップロードしてできあがり。
ですけどね、何かがちがってたらしいです。

揺れ物設定前よりひどくなってる。。
またやり直しだあ><


コメントを残す