VRで美少女になりたい人の備忘録

2018年1月からVRChatを始めました。

DynamicBoneColliderで揺れ物制御

f:id:shia1220:20180426143852p:plain

いままでアバターをアップしたり揺れ物揺らしたり

表情つけたり物を出したりしてきましたが

 

そろそろ些細なことにも気になるようになりますよね。

スカートが体に食い込んだりとか

歩いた時に前髪が頭の中に入ったりとか

 

いろいろ調節するアプローチ方法はあるようですが

以前やったダイナミックボーンの追加機能を使って

解決していきたいと思います。

 

今回の記事は以下の記事のつづきになります。

shiasakura.hatenablog.com

 

 

 

目次

 

 Colliderとは

 

コライダーと読みます。

衝突判定という意味です。

 

 ようするに揺らしたいものとめり込んでほしくない物の間に

衝突判定を付けて回避させようというものです

 

 

使い方

 

衝突判定を付けたい部分にColliderを付けます

DynamicBoneで揺らすボーンにColliderを設定します

 

以上です。

 あとは適宜調整を行ってください。

 

 では実際に使ってみましょう

 

 

 

衝突判定を付けたい部分にColliderを付けます

 

 

おなじみのミコちゃんです(かわいい

 

f:id:shia1220:20180426133852p:plain

 

 

とりあえずスカートを揺らせるように設定してみました。 

 

f:id:shia1220:20180426133929p:plain

 

 

 

揺らすとお腹がばーん!!!

 

f:id:shia1220:20180426133955g:plain

 

 

スカート部分が胴体にのめり込んでお腹が見えてしまってますね。

これはあんまりいい状態じゃなさそうです。

 

 

近いのはHipsだと思うのでここにDynamicBoneColliderを投げ込みます。

 

f:id:shia1220:20180426135035p:plain

 

 

 投げ込んでInspectorにスクリプトが付きましたが

画面に変化は特にありません。

 

f:id:shia1220:20180426135516p:plain

 

 でも大丈夫、画面を縮小し続けてみてください。

黄色いボールが出てきましたよね?

これがColliderのボールです。

 

f:id:shia1220:20180426135736p:plain

 

 

 

ボールの大きさを現実的なところに持っていくために

とりあえずRadiusの0.5に0を二つくらい足してあげましょう

 

ついでに各項目の補足

Direction:よくわかりません。Heightの項目に影響を与えてるらしいです。

Center:各ボーンの位置からどれだけずれた中心にするかです。そこそこ使います

Bound:球の外にはじくか中に入れ込むか。基本的にOutside

Radius:球のサイズ。よく使います。

Height:Directionの方向に設定した距離だけ離して分裂させます。

 

f:id:shia1220:20180426135843p:plain

 

 

 このくらいまで縮まれば目視で作業が出来そうですね。

 

f:id:shia1220:20180426135940p:plain

 

 

とりあえずRadiusの設定は0.0014にしました。

 

f:id:shia1220:20180426140938p:plain

 

 

 

DynamicBoneで揺らすボーンにColliderを設定します

 

こちら、みんな大好きDynamicBone

下の方にColliderという項目がありますね。

▲ボタンを押しましょう。

 

f:id:shia1220:20180426141202p:plain

 

 

Sizeっていう項目に1を入れましょう。

 

f:id:shia1220:20180426141354p:plain

 

 

Elementを入れる項目が出来ました。

 

f:id:shia1220:20180426141448p:plain

 

 

Hipsをここに入れましょう。

※DynamicBoneColliderを設定していないと入ってくれません。

 

f:id:shia1220:20180426141642p:plain

 

 

無事に入りました。

これをスカートのDynamicBone全てに行います。

 

f:id:shia1220:20180426141704p:plain

 

 

お疲れ様でした。

では動かしてみましょう~。

 

 

 

f:id:shia1220:20180426142227g:plain

 

結構良くなったような…? 

 

 

 

入れる前と入れた後を比べてみましょう

 

f:id:shia1220:20180426133955g:plainf:id:shia1220:20180426142227g:plain

 

 

全然違ってくると思います。

 

 

Colliderの数値や個数を工夫すればもっとしっかりとした動きを実現できると思います。

 

ただ懸念事項として、物理演算が多くなればその分だけ

ワールド全体の負荷に関わってくるということを念頭に入れて

人の多いところではなるべく簡素な揺れのアバターにするのがベターだと思われます。

 

適度な使用で最適な揺れ物ライフをお楽しみください!!