スプラインIKはボーンをスプラインにコンストレイントしてくれる
機能なので、前回の記事のように先に描いたスプラインにボーンを
乗せる場合、スプラインと違う位置に描いてもコンストレイントで
位置がぴったりと合うが、
コンストレイントを解除した場合、もちろん元の位置に戻ってしまう。
後々モーションをプロットしたい場合などに備えて、ボーンの位置を
位置あわせなどで合わせておくか、描画の際にスナップを有効にして
描画するといいかもしれない。
上の図はボーンに合わせてスナップを使ってスプラインを描いています。
「リグ(3ds Max)」カテゴリーアーカイブ
髪の毛のリグ
前回のスプラインIKを使った髪の毛のリグを作ってみる。
すでにモデルがある場合は、モデルのエッジからスプラインを
作成したほうが、簡単なのでエッジを選択して
「選択からシェイプを作成」でスプラインを作成する。
適当な位置にボーンを作成するのだが、この時スプラインの頂点数と
ボーンの数が同じでなくても大丈夫。
ただし、スプラインの頂点番号には注意しておくこと~
ボーンが逆になってしまいますので。
ボーンの根元になってほしい頂点の番号が1であることを確認し、
そうでない場合は「始点を選択」で変更する。
ボーンの親を選択した状態で
アニメーション>IKソルバ>スプラインIKソルバで先端のボーンを選択し、その後スプラインを選択。
IKとスプラインの頂点の位置にヘルパーが作成されるが、
IKを直接操作するのではなくヘルパーを移動させることで、
ボーンが変形する。
元になっているスプラインに「フレックス」モデファイヤを適用。
あとは、ボーンとヘルパーの親をリンクで頭のボーンの子供にすれば、
移動するとついてくるしフレックスで揺れることになる。
パラメータ
フレックス:伸びる割合
強度:バネの硬さ(数値が大きいと硬いバネ)
揺れ:元に戻るまでの揺れ方(少ないとなかなか戻らない)
新しいリグを考える
すっかり、更新がごぶさたになってしまいました~
多くの人が見に来てくれているのにスイマセン。
リグを新たに構築していたのですが、
「スプラインに沿ってボーン動かせればな~」と思っていたところ、
スプラインIKの存在を思い出したのでまずはおさらいしてみました。
まずは、普通にホーンを描いてからスプラインを描いて見ます。
この時ボーンの数とスプラインの頂点数は同じでなくても大丈夫です。
「位置あわせツール」でボーンと同じ位置に頂点を合わせます。
IK開始のボーンを選択して、でエンドボーンを選択、スプラインを選択。
すると、ポイントヘルパーが作成されます。
基本はスプラインの上にボーンが移動するので、
ボーンの位置が先に決まっている場合は上記の方法でボーンに
スプラインを合わせておきます。
このヘルパーを動かすことで、ボーンを制御できます。
これを使って揺れもののリグを構築しようかな~と思います。
(いつ完成するのやらw)
揺れものモーション作成
モーションが出来上がったので、それに付随する揺れ物のモーションを
なるべく手をかけずに作成したいな~と考えちょっとやってみました。
まずはキャラをコピーして胸の部分だけ残しておきます。
(スキンがかかった状態)
ヘルパーを2つ用意して、「アタッチメントコンストレイント」を
使って胸の頂点にコンストレイントします。
胸の部分は「フレックス」モデファイヤを使って簡易ソフトボディの
シュミレーションをかけています。
ヘルパーを「モーションパネル」にある「モーションパス」から
スプラインに変換を使って、モーションパスをスプラインに
変換します。(上のサンプル範囲で調整する)
スプラインから変換を使って先ほどのスプラインから
モーションデータをコピーして「集約」のボタンでモーションを
焼き付けることができます。
これで「フレックス」によって柔らかく変形した胸の
位置のモーションをヘルパーにコピーすることができたので、
胸のポーンにIKを仕込みチェーンをヘルパーとリンクすることで
胸を揺らすモーションの完成です。
チェーンとヘルパーの間にさらにヘルパーを追加して、
それにモーションを追加することでさらにモーションを自分で
コントロールできるようにもなりますね。