vrm-specification icon indicating copy to clipboard operation
vrm-specification copied to clipboard

VRMSpringBoneを布モノに適用すると突き抜けてしまう

Open ROSTOCK4421195 opened this issue 7 years ago • 7 comments
trafficstars

VRMSpringBoneをスカートに適用してみたのですが、ボーンの間隔がひろがって衝突判定のコライダの横をすり抜けてしまいしまいます。ボーンに回転制限を設定できるようにできないでしょうか? https://twitter.com/ROSTOCK_SP/status/1026457279694954497 https://twitter.com/ROSTOCK_SP/status/1026459877315555328

ROSTOCK4421195 avatar Aug 06 '18 13:08 ROSTOCK4421195

スプリングとスプリングの間に当たり判定付きのボーンが割り込んでしまうのは、なんらかの方法で対策したいと思います。

ousttrue avatar Aug 07 '18 07:08 ousttrue

よろしくお願いいたします。

ROSTOCK4421195 avatar Aug 07 '18 07:08 ROSTOCK4421195

Ref: #96

0b5vr avatar Dec 20 '19 06:12 0b5vr

#90 こちらのClothライブラリをスカート用途で使用できないか検討中です。

hiroj avatar May 11 '20 06:05 hiroj

#96 とは別の解決手法がある可能性を鑑み、このissueは #96 とは関係なく開けてお居たほうが良さそうと思います。

0b5vr avatar May 21 '20 07:05 0b5vr

Cloth とは別で回転の角度制限があるとメカ物のヒンジジョイントのような表現が可能となるので、 SpringBone への角度制限の実装を同じく希望します。

ただし、現在の VRM がローカル方向を破棄する以上 SpringBone は仮想ボーンを利用しているのに近い形ですので、例えばスカートのような放射状のボーンで Z 軸回転が起こらなくなるように制限したい時に、~~全てのスカートの骨が前後にしか揺れなくなる~~方向推定した軸基準でしか制限ができないというような事が予想されます(※1)。もし SpringBone が現在の実装を引き継ぐのであれば、 SpringBone のパラメータとして角度制限の項目に加え、仮想ボーンのロール値を設定するような(※2)項目を実装する事で任意の方向への角度制限が実現できるのではないかと考えられますが、節ごとに再設定が必要な実装は如何なものかと思います。


※1: 未検証です、間違っていたらすみません。多分ワールド軸であれば座標変換は必要だけど制限できるかも。 ※2: 例えばスカートの骨が 8 方向ある場合、斜めなら45°、横側なら 90° とすれば全て X 軸の制限のみで放射状に動かせるのではないでしょうか。

TokageItLab avatar Jan 17 '21 14:01 TokageItLab