こんにちは。ちいかまです。
今回はタイトル通りのものを作った備忘録です。
(動作が)軽い
(布の重量が)重い
震えない
貫通しない
スカート(布)
です。
昨今ではふわふわしたスカートをよく見るようになりました。
また、あんなプラグインやこんなプラグインで、貫通しないし震えないけど致死量のボーンが配備されているスカートが生まれたり生まれなかったりしています。
もちろんそれらも素晴らしくて超最高なのですが、そうでないスカート(特に重量が重めのスカート)を作りたい私は中々作り方に辿り着けず、苦労をしたので、備忘録を書きました。
私がこういったことを記事として公開するのは、大体「野菜採れすぎたしご近所さんに配るか」ぐらいのノリであり、セクシー大根でも構わず配っちまうことをご了承ください。
いざ。
まず、そもそもとしていい感じの布を作るためのコツを説明します。
これは布の断面だと思ってください。4つのボーンで等間隔に(つまり22.5度ずつ)曲げようとすると、こんな感じになります。なんか、めくれあがってる不自然な感じになります。
なので、私はこうしました。
根元のボーンだけ大きく曲げて、あとは小さく曲げる。
こうすると自然ですね。
じゃあこの考え方をどう実践で生かすか? 私は二つのやり方を試してみました。
それは
①全て物理演算ボーンにして、一番上のジョイントの可動範囲のみ大きく、あとは小さくする(あるいは上から下にかけて可動範囲を徐々に小さくする)
②一番上のボーンをIKスカートにして、それより下は可動範囲の小さい物理演算ボーンにする
です。
結果として、②が上手くいきました。
ところでIKスカートとは。
これのことです。厳密には、私はここから着想を経てもっと原始的なものを作りました。
これはコートなのですが……
放射状に配置したボーン一組につき
コート裾1
|□↳コート裾2(兼コート先)
|□□↳コート裾3
↓IK□□↳コート裾4
コート裾IK
のような構造になっています。
水色に光っているのがIKです。足の周りに配置しています。
コート裾1には回転制限を設置しています。pmxエディタでいうところの角度制限です。
足を動かすとこんな感じ。足のZ軸回転が影響するとおかしくなるので、コート用の足ボーンを作りました。IKでいい感じに足ボーンの向きだけを取り出したやつです。それをコート裾IK達の親にしました。
私はblenderでモデルを作っており、最初はロールを使って回転制限(角度制限)を配置していました。ですが、pmxにロールを持ち込めないことが判明して爆死。なんとか手作業で制限の値を配置しました。(なのでちょっとボーンの動きが変ですが、踊らせると気にならなくなります)
角度制限の値は、大まかにグループ分けして設定しました。
正面、中間、右面、中間、背面、中間、左面、中間、(正面に合流)
こんな感じのグループ分けです。
数値はあまりにも事故っていたので公開しません。大体180(-180)と90(-90)で刻んでます。
とにかく、コート裾1をこうした上で、コート裾2~4を物理ボーンにしました。
2~4のジョイントは今度こそblenderでボーンにロールをつけて配置。blenderでMMDモデルを作るときは、ロールをつけてジョイントや剛体を配置すると、そのロールした方向を向いて配置されます。
ジョイントの回転の仕方は、このXYZと書かれた近くの■を指先でつまんで、コマのように回すイメージをするとわかりやすいです。それがそのジョイントのその軸での回転の仕方です。
つまり、このジョイントの配置だとX軸での回転がスカート(コート裾)の外側への開き(内側への萎み)と対応しています。なので、マイナス方向への回転をしないようにすれば、IKスカートで広がったスカートがそれより内側に萎むことはありません。
可能であれば、-5ぐらいマイナス方向への回転も許してやるとより自然になります。
Z軸の回転制限は-1,1が安パイらしいです。
また、先ほども説明した通り、ジョイントの回転制限をしっかりしていれば(ある程度)内側に萎むことはないので、私はコート裾2の接触判定をなくしました。足の剛体に触れて震えさせない為です。
あとは、変形階層にも注意。
以上!
↓作例
(ネリアたん(女の子)の指が破綻していることに気がついたので、修正版上げるまでYouTubeの限定公開貼っておきます……)




