VRChat アバターで物を出し入れする

同じタイトルでググると、アーマチュアにアタッチしたオブジェクトに関する以下の方法がヒットする。
① GameObject の Is Active をオフにする方法
② Bone の Scale を 0 に設定する方法

これらの方法では、キャラクタと一緒にモデリングした(オブジェクトが分かれていない)物の出し入れはできない。Blender でオブジェクトを分ければ解決するが、その物に Shape Key が設定されている場合、オブジェクトを分けることができない。
②の方法はうまく行きそうに思えるが、Scale を 0 にすると、0 に何をかけても 0 なので、Scale が元に戻らなくなる。また、物が揺れる(PhysBones を設定している)と線が浮き出てしまう。 (参考画像にて、エプロンのボーンの Scale を 0 にしているが、揺れた時に線が浮き出てしまう。)

したがって、オブジェクトが分かれていない場合、以下の方法で物を出し入れするしかない。
① Blender で対象の全ての頂点を1点に集約させる(体の内側に隠す)シェイプキーを作成する。
② Unity で BlendShape(①)の有効化とボーンを非アクティブにするアニメーションを作成する。

ボーンを非アクティブにすることで揺れなくなる。

コメントする

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