瞼の調整

 
 
 

Face Robot で頭にキーフレーム アニメーションやモーション キャプチャ アニメーションを追加する場合は、あらかじめ瞼を調整しておきます。調整を行うことで、眼球の形状と位置に応じて瞼が変形する様子を制御することができます。

眼球は、完全な球状ではありません。角膜の部分(虹彩が見える部分)が外側へ際立って膨らんでいます。周囲の物を見るために目をきょろきょろ動かすと、角膜の膨らみによって虹彩周辺の瞼が変形し、外へと押し出されます。レム睡眠中、閉じた瞼の下で目が動いているときも、角膜の膨らみ部分の移動が確認できます。[目の調整](Tune Eyes)ツールを使用すると、瞼の変形する部分としない部分を決定したり、角膜バルジから作成される瞼のデフォーメーションの強度を設定できます。

このセクションで紹介する手順に従って、瞼のジオメトリのデフォーメーションがリターゲットやまばたきのアニメーションと同期するようにします。瞼のデフォーメーションを設定するには、目のアニメーションコントロールの動作を制御する各種ウェイトマップおよびファンクションカーブを使用します。

基本的には、瞼が閉じた状態、静止した状態、大きく開いた状態のどれにある場合でも、瞼の調整を行うことで適用されたモーションの意図が正しく伝わるようになります。アニメーションによって生じるデフォーメーションの強さを後からオフセットまたはスケールすれば、完璧な結果が得られます。

注:このトピックに関するビデオを表示するには、「Softimage YouTube Learning Channel」の Face Robot プレイリストをご覧ください。

瞼のデフォーメーションを調整するには

  1. [Tune(調整)]パネルで[フェイス](Face) [ツール](Tools)タブをクリックし、[目の調整](Tune Eyes)を選択します。

  2. パネルの[オプション]エリアでは、次のようなオプションが調整できます。

瞼コントローラを設定する

顔のジオメトリの解析が終わると、各コントローラのローカル位置はゼロに設定されます。一般にこの段階では、瞼のゼロ位置は静止位置に一致します。ローカル Y 軸上ですべての瞼コントローラを 1 に動かすと、目が閉じます。値を -1 にすると、目が大きく開いた状態になります。

   

これらの位置をすばやく設定するには、Blink Properties (まばたきのプロパティ)エディタ([Act(アクト)]パネルで[ツール](Tools) [まばたき](Blink)を選択)にある[まばたきのアニメーション](Blink Animation)パラメータを使用します。プロパティ エディタの[アニメーション カーブ]セクションにある 4 つのスライダをすべて 1 に設定すれば、瞼が閉じます。

エッジ影響マップをペイントする

ご覧のとおり、Face Robot で瞼のデフォーメーションを細かく設定できるにも関わらず、目は完全に閉じた状態になく、余計な頂点までがコントローラによって引っ張られています。まず、決まった頂点だけがコントローラの影響を受けるように調整しましょう。

瞼のエッジ マップを編集すれば、瞼が閉じる部分を定義することができます。

  1. [Tune(調整)]パネルで[ツール] [Tune Eyes(目の調整)]を選択すると、[目のプロパティ]パネルが表示されます。

  2. [オプション]領域で瞼タブの 1 つ([LEyelidUpper]など)をクリックし、[「瞼への影響マップ](Eyelid Influence Maps) [エッジ](Edge)ボタンをクリックして、ウェイト マップを表示します。

    ペイント モードに切り替わり、ビューポートに影響マップが表示されます。

  3. ウェイト マップをペイントしてウェイト値を調整します。ウェイトを 1 にすると瞼が完全に閉じ、ウェイトを 0 にするとデフォーメーションが生じません。

    [ペイント ツール]の中から[絶対](Abs)を選択し、[不透明度]を 20 に設定して、デフォーメーションから除外する頂点をペイントします。[イレイス](Erase)を使って頂点を完全に除外してしまい、[スムーズ](Smooth)で結果を調整する方法もあります。

    [W]を押せば、ペイント モードとその前に使用していた表示モードの間で切り替えることができます。

    ペイントの詳細については、「ウェイト マップをペイントする」を参照してください。

  4. 次に、ブラシの絶対モードでの[不透明度]を 100 に設定し、瞼の縁にある頂点をペイントします。これで、頂点のデフォーメーションが最大になります。

  5. 他の 3 つの瞼で同じ手順を繰り返します。

瞼の角より外にある頂点に影響が及ばないことを必ず確認し、必要であれば調整を加えます。[BlinkProperties(まばたきのプロパティ)]パネルのコントローラを行ったり来たりさせ、デフォーメーションの動作を確認することもできます。

瞼のエッジ カーブを調整する

頂点のデフォーメーションを設定したら、次は、瞼のエッジのデフォーメーション カーブを編集します。エッジのデフォーメーション カーブを使うと、瞼の閉じ具合や、閉じるときの瞼の形状などをコントロールできます。

Face Robot では、瞼の形状を滑らかな放物線と想定しています。放物線でない場合は、瞼コントロールが 1(閉じる)に設定されていても瞼が完全に閉じないことがあります。瞼の一部に小さな隙間や、互いに交差するポリゴンが残っている可能性、または[Stage 3: Landmarks(ステージ 3: ランドマーク)]パネルで瞼のランドマーク ポイントをあまり密接に選択しなかった可能性があります。

この問題は、原因が何であれ、瞼のエッジ デフォーメーション カーブ上のポイントを動かし、値が 1 を超えるようにすれば直ります。

  1. [Tune(調整)]パネルで[ツール](Tools) [目の調整](Tune Eyes)を選択すると、[目のプロパティ]パネルが表示されます。

  2. [EyeProperties(目の調整)]パネルで、瞼のタブの 1 つ(たとえば[LEyelidUpper(左目上瞼)]をクリックします。

  3. [瞼のエッジ デフォーメーショングラフ](Eyelid Edge Deformation graph)のカーブ上のポイントを使って、瞼のエッジの形状と開き具合を調整します。既定では、閉じた瞼は直線を形成します。

    • [M]を押すか、矢印ボタンをクリックし、カーブ上のポイントとハンドルを動かします。これで、閉じた瞼の最終的なプロファイルが調整できます。

    • [キーの追加](key+)または[キーの削除](key-)ボタンを使ってポイントを追加または削除すると、プロファイルをさらに正確に定義できます。

    • カーブに加えた変更を取り消し、カーブを元の状態に戻すには、カーブ エディタの下にある[リセット](Reset)ボタンをクリックします。

バルジ影響マップをペイントする

眼球をいずれかの方向に動かすと、角膜の膨らみにより、瞼にわずかながらはっきりとしたデフォーメーションが生じます。Face Robot では、この影響が瞼のバルジ マップを使って自動的に瞼に組み込まれます。

この機能を確かめてみるには、LookAt コントローラを選択し、位置を変更します([F6]を押して[Act(アクト)]パネルのシノプティックビューを開き、[LookAt(確認)]ボタンをクリックしてコントローラを選択します)。眼球が LookAt の位置に従って動くとき、瞼に注目してください。

エッジ マップのペイントに使ったのと同じ方法で(イレイス、絶対、追加、スムーズ)、角膜の膨らみによって生じるデフォーメーションの部分を調整することができます。この例では、目の角を大幅に狭めることが重要です。なぜなら、現実に角膜の影響がほとんどないからです。

  1. [Tune(調整)]パネルで[ツール](Tools) [目の調整](Tune Eyes)を選択すると、[目のプロパティ]パネルが表示されます。

  2. [オプション]領域で瞼タブの 1 つ([LEyelidUpper]など)をクリックし、[「瞼への影響マップ](Eyelid Influence Maps) [バルジ](Bulge)ボタンをクリックして、ウェイト マップを表示します。

    ペイント モードに切り替わり、ビューポートにバルジ マップが表示されます。

  3. エッジ影響マップのときと同じように、ウェイト マップをペイントしてウェイト値を調整します。ペイントの詳細については、「ウェイト マップをペイントする」を参照してください。

ウェイトを 1 にすると、瞼の膨らみがその下の眼球の膨らみと一致し、ウェイトを 0 にすると、瞼は膨らみません。ウェイト マップの強度と範囲は、モデルの瞼の厚みに左右されることがあります。

他の 3 つの瞼で同じ手順を実行します。

瞼の視覚方向のトラッキング

[瞼の視覚方向のトラッキング]は、瞼に新たなデフォーメーション レイヤを追加します。目を上または下へ向けると、瞼が眼球の向きに沿って動くのがわかります。瞼は、視界を妨げないように自動的に瞳孔をよけて動きます。この機能の効果を確かめてみるには、LookAt コントローラを縦方向に動かします。目が極端な位置に向かうと、瞼の影響が最大または最小になることもわかります。

また、デフォーメーションの速度にも注目してみましょう。瞼は、瞳孔の動きに従いますが、少し遅れを取っています。眼球が静止位置から回転し始めた場合、瞼は、眼球が「見上げる」位置に達したときより速いスピードで後を追います。

この動作は、[瞼の視覚方向のトラッキング]カーブ エディタを使って調整するか、完全に排除することができます。瞼のトラッキング プロファイル カーブは、瞼のエッジが視覚方向にどれだけ密接に従うかをコントロールします。

  1. [Tune(調整)]パネルで[ツール](Tools) [目の調整](Tune Eyes)を選択すると、[目のプロパティ]パネルが表示されます。

  2. [オプション]エリアで瞼のタブの 1 つ(たとえば[LEyelidUpper(左目上瞼)])をクリックします。

    [瞼の視覚方向のトラッキング]カーブの下にある[0](Zero)ボタンをクリックします。すると、カーブが直線になり、上記のような LookAt コントローラを動かしたときの影響が排除されます。[リセット](Reset)ボタンをクリックしてカーブを元の状態に戻します。

    トラッキング カーブは、視線の垂直角度(カーブの X 軸)とトラッキング率(Y 軸)をグラフにしたものです。

    • [X 軸](X axis)は、眼球の回転度を表します。軸の値は -30~+30 で、-30 は下を向いたときの視線、30 は上を向いたときの視線に該当します。カーブが直線である場合(値が 0)、瞼は、瞳孔の位置に応じません。値を 1 に設定すると、瞼は動向の視線方向に完全に従います。

    • [Y 軸](Y axis)は、デフォーメーションの相対値です。軸の値は、瞼のエッジが眼球の動きに従う度合いを表す率です。トラッキング率は、目が上を向いているか(正の値)、下を向いているか(負の値)によって変化します。

    既定のカーブは、単純に眼球が -30 度の方向に達していて、瞼が -0.5 の最小デフォーメーションの影響を受けていることを示しています。徐々に 0 度に近付くにつれて、デフォメーションの率が上がります。眼球が 30 度を越えると、0.5 の最大値で瞼のデフォメーションが停止します。

  3. 瞼を視線方向にどのように従わせるかを変更するには、[瞼の視覚方向のトラッキング](Eyelid Sight Direction Tracking)グラフのカーブ上にあるポイントを調整します。

    [M]を押して選択されたポイントを自由に動かすか、[Q]を押して領域ツールを使い、複数のポイントをまとめて編集します。

    手始めに X 軸のカーブをスケールし、方向の影響を大きくしたり小さくするとよいでしょう。