

オブジェクトの変形に利用できるボーンシステムについて、私の見つけたもっとも速く柔軟性のあるLightWaveのボーンシステムの1つをご紹介します。LightWaveには、ウェイトを付けたボーンのコントロールや、ウェイトマップをペイントせずにLightWaveのボーンのフォールオフを使用するオプションが用意されています。ボーンの機能には、ボーン自体に筋肉の設定を組み込んだり、望むような結果を得たりできるような設定がいくつもあります。
しかし、もしあなたがボーンを回転させたときに接合部分がどのように変形するのかをもっと細かく設定するにはどのようにしますか?例えば手首を深く曲げたときに、肘がすこしだけ動くような設定にしたい場合はどうでしょう?ボーンの回転にモーフやモーフの連続を関連付けるスマートスキニングと呼ばれる技術が開発されたので、これにより常に完璧に望むような変形を設定することができるようになりました。
たとえば、90度腕を回転させたときに、その曲げた量に合わせて肘の回りのポリゴンを、きちんと決まった形状に変形させることができます。LightWaveの機能を使ってこういった設定を行なうことが可能なので、これからその方法をご紹介していきます。
始めに、このテクニックはLightWaveレイアウトですべて行っていくことができるので、モデラーを使用する必要は全くありません。このテクニックを使った特殊な方法はとても便利で、最終的な結果をすぐに確認することができるので、レイアウトのどの変形ツールを組み合わせて使ってもかまいません。また、ウェイトマップをオブジェクトに使用する必要もありません。私はウェイトマップをあまり利用しないので(私はLightWaveの通常のボーンシステムと設定を比較するのが面倒だと思っているので)、私にとってこの方法はとても役に立っています。また、スマートスキニングはモデラーやウェイトマップとは関係なく利用できるという利点もあります。とにかくチュートリアルを進めていきましょう。
あらかじめモデラーにて作成されたメッシュ(オブジェクト)を読み込み(アイテムタブ>開く>オブジェクトメニューから)、ボーンを追加するか、スケルゴンを変換(セットアップタブ>追加>その他>スケルゴンをボーンに変換)します。モデラーでいくつかのスケルゴンを設定しておくか、レイアウトのボーン描画を使用するとよいでしょう。

メッシュオブジェクトを選択して、アイテムプロパティパネル(pキーを押します)を開きます。ジオメトリタブのサブディビジョン手順を「一番最後」に設定します。

続けて腕の設定を行なっていきます。下にあるフレームスライダを10フレームのところまでドラッグし、肘の部分を適度な角度まで曲げます(yキーを押して回転ハンドルをドラッグしてください)。回転させたらキーフレームを作成します(Enterキー)。

LightWave 3D [8]の新機能の1つを使って、10フレームの所で変形をさらに矯正し、モーフとして保存することなく、この形状をモーフ形状のようにとっておくことができます。
私はよく、肘のボーンに対してボーンのアイテムプロパティパネルにある、「接合部補正」や「筋肉の発生」を利用しますが、これらの新機能を使うことで、合理的に変形を設定していくことができます。ですが、必ずしもこのボーンプロパティの機能を使用する必要はありません。面白いことに、これらの設定フィールドの中には、必要であればマイナスの値を入力することもできます。あなたが設定したリグ(骨格構造)で実験してみてください。もしかするともう変形状態を強制して直す必要がないかもしれませんよ!
それでは、さらに設定を進めていきます。オブジェクトのアイテムプロパティパネルにある、物理演算タブから、SoftFXの物理演算プラグインを追加します。

SoftFXがオブジェクトに対してどのように揺れを加えるかを設定するOperatorタブへ移動します。この場合、揺れは加えたくないので、Operator1 Mapを<none>に設定します。SoftFXがオブジェクトのデータを取得できるように「演算」ボタンをクリックします。0から10フレームにプレビュー時間を設定することでそれ以上計算は行なわれませんので、時間を節約することができます。

これで形状を取得する作業は終わりました。EditFXタブに移動します。物理演算を完了して得たメッシュに、望まない変形部分のポイントがあれば、この作業によってそのどのポイントでも編集しなおすことができるようになります。この機能はモデラーのマグネットツールに、さらに追加機能を加えたかのように働きます。簡単にあげると下記のような機能があります。
・Undo(アンドゥ):EditFXで加えた最後の変更をクリアすることができます。
・Edittool:メッシュを移動させる部分を有効にします。オブジェクトのその選択したポイントがハイライトされ、そのポイントをクリックすることでレイアウト上で移動させることができます。
・Editframe:調整を行なった結果が、現在のフレームか、それ以前か、それ以降か、全てのフレームに対して有効になるのかを選択することができます。
・Fix:EditStartとEditEndの間のフレームだけに調整を制限することができます。加えた修正は、現在のフレームから最後のフレームにかけて弱まっていきます。
・Falloff:マグネットのかかり具合、つまりフォールオフを直線的、急激、そしてなしに切り替えることができます。
・EditSize:修正を加える半径を選択することができます。マグネットツールのようにポイントの周りに影響が加わりますので、ひとつのポイントだけを調整したいばあいにはこの設定を小さくしてください。
・Edit axis:特定の軸に編集を固定させることができます。
・Edit map:EditFXの効果をサーフェイスや、セット、パート、ウェイトマップなどポイントセットで制限することができます。制御の際にはとても便利な機能です。
・Commands:SmoothやMakepathの設定によりよりダイナミックに、滑らかに修正することができます。
ハイライトされたポイントをクリックし、インターフェイス上でドラッグすることで編集を行っていきます。加えた変形が一番始めのフレームに反映されるように、EditframeはデフォルトのAll framesのまましておいたほうがよいでしょう。Edit sizeを調整すれば、スライダをドラッグするのに合わせて、現在編集しているポイントの周りに、効果の及ぶ範囲を表す球が表示されます。

EditFXを使って肘の説像部の変形がうまく調整できたら、0フレームに戻って腕を真っ直ぐに戻します。EditFXの変形はボーンが真っ直ぐになった状態でも残ったままです。

ファイルメニューの保存から、エンドモーフ保存を選択して、「Bent」(ピッチ方向に100度回転といった場合には、モーフ名称を「Joint.Elbow100P」というようなわかりやすい名称などつけると良いでしょう)などの名前を付けます。オブジェクトを保存してこのエンドモーフを残します。

物理演算プラグインのリスト中でSoftFXの名称の横をクリックして、SoftFXプラグインを無効にします。変形タブの変位プラグイン追加にJointMorph Plusプラグインを追加します。

JointMorph Plusのインターフェイスを開き、Control Boneにてモーフを制御するボーンを選択します。Axisでは、先ほど回転を加えたボーンの回転軸を選択します。Angle>maxをMax Morphに設定します。これは、肘が90度以上回転したときに、元の形状に戻らず、最大のモーフ形状を保つという設定になります。Value1の項目を有効にし、その他の設定はそのままにしておきます。

Value2で、Bent morphを選択して90度の角度で100%となるように設定します。

パネルを閉じてタイムラインをスクラブさせてみてください。肘が曲がるのに合わせてモーフが実行されているのが確認できるはずです。これはIKのモーションを使っても機能するので、キャラクターに対して設定することも可能です。
これであなたもメッシュ中の接合部に対して特殊な変形を加える方法を知ることができました。またモデラーへオブジェクトを持っていくこともなく済ませることもできました!私はこのテクニックがあなたにとって役に立ち、さらにもっと多くの作法やテクニックを考え出して利用してくれることを期待しています。
|