
『鬼方カヨコ』#07 ~顔のリギング~
概要
本来なら体等のモデリングが全て終った後に作業するべきなのですが、ブルアカ関連のイベントに出ることになりまして…一旦顔だけでも完成させて撮影をしたいので先に顔のリギングを済ませます。
工程はこちら
・口ジョイントの作成
・下顎のスキニング
・唇のスキニング
・舌のスキニング
・口のテクスチャリング
・眼球ジョイントの作成
・眼球のスキニング
の7本仕立てでお送りします。

口ジョイントの作成
次のような階層で設定します。

顎の駆動は下顎肢の関節部分に置いておきます。
下唇は基本的には下顎に追従しますが、唇を閉じながら顎を動かすといった事も事実可能なわけですから、そういった対応ができるよう下顎の子階層に追加しておきます。
また、唇については合計で8つ程コントローラーを作る想定をしていますが、リグでやるのかブレンドシェイプでやるのかは未定です。今回の記事では飛ばします。
舌については、出すしまうといった動作用のリグを用意してあります。
(舌の根元のジョイントを回転駆動で動かせるよう設定してみましたが、あとで仕様変更するかもしれません。
一旦これで行きます。)
さて、ジョイントの追加が終わったら、顔のモデルに「影響を編集」より「インフルエンスの追加」をしておきましょう。

設定ボックスから、「ウェイトロッキング」にチェックをつけて置くことを忘れずに。
下顎のスキニング
口外
まずはザックリと1で置き換えします。

領域に合わせてウェイトをスムーズにしていきます。

口内
同様に1でポスト、スムーズをかけます。


歯茎
同上


歯
下顎の歯のみ1全ぶっぱで。楽でいいね。

唇のスキニング
適応範囲にて、下顎に振っていたウェイトを全て下唇に移します。

現状だと、形が不自然にガタつく箇所が見受けられるので、その箇所のウェイトを下顎に戻しながらスムーズにしていくことで解決させます。


上唇も同様に、顔のジョイントのウェイトを一旦全部移します。

めり込みが発生しているのでスムーズにして整えます。

内側の唇の外縁にウェイトをコピーします。

内側の頂点が追い付いていないので、値を振ってなめらかにします。

舌のスキニング
ダミージョイントの作成
スプライン用にダミーのジョイントを作成しておきます。

元のジョイントとローカル座標を揃えておきたいのでこの位置です。
ダミージョイントはバインドポーズを持たないので以下のコマンドで無理やりつけておきます。
dagPose -bp -save
スキニング
本ジョイントの方を最近接でバインド。


めっちゃ根本貫通しとるやんけ、TongueRootになっている箇所をMouth_Rootに割り振り直します。

こんな感じで良いかなと思います。
口のテクスチャリング

現状だと真っ白なので、色をつけていきましょう。
UV展開
まずは口の内側、そのまま展開しただけです。くそ簡単

次に舌
正中線でぶった切って、下の上面にあるUVを軸にオート展開しました。裏面やくびれの部分はそこまで目立たないのでこれで大丈夫だと思います。

歯茎はこのように

歯

これらをレイアウトしたものがこちら。顔のテクスチャの隙間に埋めるように配置し、テクスチャの無駄を減らす方向性でいきます。

ベース色、ベース影
とりあえずベースカラーを置き、スペキュラもかけておきます。

ディレクショナルライトでは口の中は全て影になってしまうため、裏面などの表現を出す際シェーダーには頼れません。テクスチャで表現します。

歯間の溝を軽くテクスチャリングします。

唇をなじませます。


歯茎に歯の透かしの表現を入れます。
若干黄色みを持たせつつぼかしで入れました。


咽頭に、のどちんこが目立つようベース影を足します。

軽く調整し、色味を足しました。

現状、舌の下部の色が歯茎の色と違います。

同じにします。

溝と舌下帯を描画します。


見映え調整
奥歯が手前の歯と同じ色のため前後感が感じ辛く、浮いて見えます。

なじませます。

眼球ジョイントの作成
本来、正面を向いているキャラを正面から正投影した場合、瞳孔と眼球の中心が同じ座標に一致するはずなのですが、今回のモデルは原作に寄せるため下画像のようにずれて配置されています。
そのため、振るウェイトの値については若干の調整が必要です。パーセンテージで調整すれば問題ないでしょう。
というわけで、調整用のジョイントと合わせて各眼球中心部に2つずつ、追加で目線の先のジョイントも置いて各眼球に3つの計6つ配置します。
目線の先に目印としてのジョイントも置いておきましょう。

ワールドに合わせて方向づけしておきます。

眼球のスキニング
1全ぶっぱ!以上!

瞼オブジェクトのスキニング
開閉時の形状変化はブレンドシェイプでやるんで、Headに全ぶっぱで大丈夫。やっておきます。

まとめ
というわけでリギング作業でした。少し人間らしい表情が作れるようになってきたかと思います。
しかしながら表情が増えたとはいえまだまだバリエーションが少ないです。
次回はブレンドシェイプを行い、表情のバリエーションをグンと増やしていきます。
それでは。