4-1 モーフィング1(モーフ ベースの準備)

モーフィングについて

モーフィング(Morphing)とは、3DCGで用いられる手法の一つで、ある形状のオブジェクトを別の形状のオブジェクトにシームレスに変形させることを意味します。
変形のベース(原型)になるオブジェクトをモーフ ベース、変形のターゲットとなるオブジェクトをモーフ ターゲットと呼びます。一つのモーフ ベースに対して、複数のモーフ ターゲットを割り当てて、それぞれの比率(モーフ ウェイト)で形状をブレンドすることができます。
モーフ ベースとモーフ ターゲットはポリゴンやマテリアル等の構造が同一で、頂点位置のみが異なる構造である必要があります。

当チュートリアルではモーフ ベースの準備を行い、次のチュートリアル「4-2 モーフィング2」ではモーフ ターゲットの準備を行い、その次のチュートリアル「4-3 モーフィング3」で実際にモーフィングを実行しますので、必要なチュートリアルをご参照下さい。

頭部の分離

今回は入門書の制作例である以下のモデルを使用します。
Get the Flash Player to see this player.

book_supplement.zip」をダウンロードして解凍すると、「book_supplement」フォルダが出来ます。その中の「sakura_rigged_motion.toy」を開くと、以下のように全身にボーンやリグが配置されてアニメーションがセットされているモデルが読み込まれます。
このモデルの頭部をモーフィングで変形させることにします。そのためには、頭部をモーフ ベース用のオブジェクトとして本体のオブジェクトから分離する必要があります。体全体は既にスキニングされていますので、既存のスキニングをキャンセルすることなく頭部を分離し、モーフィングを追加することになります。つまり、分離した頭部の各頂点は、スキニングとモーフィングの両方の影響を受けることになります。

オブジェクト パネルを見ると、本体のメッシュ オブジェクトである「Body」のアイコンには「L」(ロック)マークが入っていて編集不可になっています。「Body」を右クリックしてポップアップ メニューを表示し、「編集不可」をクリックしてチェックを外し、編集可能にします。

また、頭部のポリゴンの周囲にある青いポリライン表示のオブジェクト「HeadBox」が選択の邪魔になるので、「HeadBox」のチェック マークをオフにして不可視にします。その他、選択の邪魔になりそうなオブジェクトは同様に不可視にしておきます。

メッシュ オブジェクトのポリゴンを選択するので、メイン ツールバーの以下のアイコンをクリックして「ポリゴン選択 モード」(Shift+P)にします。

辺や頂点を個別に選択しないので、「辺選択」と「頂点選択」をオフにして、「面選択」のみにしておきます。

メイン ツールバーで「投げ縄選択」にして、

頭部のモーフ変形させたいポリゴンをマウス ドラッグで投げ縄選択します。キーボードのAltキーを押しながらドラッグすると、投げ縄の境界を含まない内側のみが選択されるので便利です。

後ろから見ると、意図しないポリゴンが選択されていたので、キーボードのCtrlキーを押しながらポリゴンをクリックすることで、該当ポリゴンの選択を解除します。

頭部のポリゴンの選択が終わったら、「編集」メニューの「切り取り」(Ctrl+X)をクリックして選択箇所のポリゴンを切り取ります。切り取られたポリゴンのデータはシステムのクリップ ボードにコピーされます。

切り取ったポリゴンを新規のメッシュ オブジェクトとして貼り付けたいので、シーン内でオブジェクトが選択されてない状態で「貼り付け」を行なう必要があります。
オブジェクト パネルでシーン内に選択されたオブジェクトがないことを確認し、「編集」メニューの「張り付け」(Ctrl+V)をクリックします。

これで、切り取ったポリゴンが新しいメッシュ オブジェクトとして張り付けられました。

オブジェクト パネルを見ると、貼り付けたメッシュ オブジェクトは「Mesh1」という名前になっています。

ここで、オブジェクト パネルで「Mesh1」をダブル クリックしてオブジェクト ウィンドウを表示し、名前を「HeadBase」に変更しておきます。
(sakura_rigged_motion_morphed1.toy)

頭部のスキニングの復元

ポリゴン単位の選択・編集は終わったので、メイン ツールバーの以下のアイコンをクリックして「オブジェクト選択 モード」(Shift+O)に戻します。

すると、貼り付けたメッシュ オブジェクト「HeadBase」は切り取り元の「Body」の位置とはずれた位置にあることが分かります。「HeadBase」の各頂点には切り取り前のボーン ウェイトが存在していますが、スキニング(具体的なボーンの割り当て)が行われていないためです。「HeadBase」に対して、「Body」と同じボーン構成でスキニングを行なうことで、位置に合わせることができます。

オブジェクト パネルで、「Body」の全ボーンのルート位置にある「Hips」と「HeadBase」の両方を、キーボードのShiftキーを押した状態でクリックすることで選択します。

この状態で「オブジェクト」メニューの「ボーン参照をセット」をクリックすると、以下のダイアログが表示されます。「Body」と同じボーン構成をセットしたいので、「既存のボーン情報を適用」をチェックします。右のリストには、「HeadBase」と同じ階層にあるスキニング済みのメッシュ オブジェクトがリストアップされていますので「Body」を選択します。
「OK」ボタンをクリックすると、「HeadBase」は「Body」と同じボーン構成でスキニングされます。

すると、「ウェイトペイント ツール」に移行して以下の表示になります。今回はボーン ウェイトを調整しないので、

メイン ツールバーで「移動 ツール」(T)に戻します。

頭部のメッシュ オブジェクト「HeadBase」は本体の「Body」と同じボーン構成でスキニングされ、位置のずれもなくなりました。
これで、頭部をモーフ ベースとして使用する準備が出来ました。
(sakura_rigged_motion_morphed2.toy)

コメントを残す

メールアドレスが公開されることはありません。