FaceBuilderは写真や動画から頭と顔の3Dモデルを作成できるNukeのプラグインです。
3Dモデルを作成するためには、様々な角度で撮影された顔の素材が必要です。
読みこまれた2D素材に合わせてFaceBuilderの3Dモデルを配置します。
ここで作成したモデルは、たとえば、GeoTracker を使用した固定追跡や、FaceTracker を使用した顔の追跡に使用できます。
プラグインをインストール後Nukeのツールボックスからfacebuilderを出します。
同じカメラで同じ焦点距離で撮影された、ニュートラルな表情の被写体(理想的なケース)の写真群が必要になります。何枚かの写真、または動画ファイルでも構いません。1枚の写真で3Dモデルを作成することもできますが、正面からの写真と耳が見える別の角度からの写真の少なくとも3枚を用意することをお勧めします。
正面からの写真と、耳の見える別の角度からの写真2枚の合計3枚があれば、より良い3Dモデルを作成することができます。写真をシーケンスとしてNukeに読み込むには、写真名に数字を使い、Readノードを作成し、これらの写真をシーケンスとして読み込みます。
映像を使ってモデルを作成する場合は、人物の頭や顔をさまざまな角度から撮影し、最もニュートラルな表情のフレームをいくつか見つけます。Readノードを使用して、映像を Nuke にインポートします。
バージョン2.0.0からは、ニュートラルでない表情の写真やビデオフレームも使えるようになりましたが、ニュートラルに近い表情の方がモデルがより良く作成できます。
また、3Dモデルを正確に作るには、被写体となる人物を撮影したカメラの設定に合わせて、Cameraノードを設定することが推奨されます。カメラの設定が分からない場合は、FaceBuilderのカメラ設定(メインタブ)でFocal Length estimationをオンにすると、後で推定したカメラ設定をCameraノードとしてエクスポートすることができるようになります。推定は、3Dモデルを変更するたびに行われます。
tex入力には、FaceBuilderで作成した3Dモデルに追加されるテクスチャを入力することができます。
モデルのピン留め
目尻や唇、鼻、耳、あごなど、写真で顔の位置がはっきりと確認できる部分からピン留めを始めるとよいでしょう。メッシュ上の目尻やその他のポイントをクリックし、写真上の対応するポイントにドラッグします。小さな赤い四角が表示されますが、これはピンで、フレーム内のポイントに固定されています。2つ目のポイントを追加してドラッグを開始すると、3Dモデルは必要なサイズに拡大縮小されます。2点目のピンは、必要であれば2D空間でモデルを回転させることもできます。3番目のポイントでは、3D空間でモデルを回転させることができます。最も目立つポイントを固定したら、頬、額、眉などの細かい形状の違いを調整し始めることができます。最初のフレームが終わったら、次のフレームに切り替えて、ピン留めの作業を繰り返します。ピンで留めるごとに、モデルのクオリティが上がっていきます。ビューアで3Dモードに切り替えると、どのように見えるかを確認することができます。
赤い点は「ピン」です。最初のフレームをピン留めすると、このように表示されます。
3D モデルの形状は固定したフレーム間で共有され、変換(回転、位置)は各フレームのキーフレームに保存されることを知っておくと便利です。それらのエクスポートについては後で説明します。
モデルの成形中に、メッシュの外観を微調整する必要がある場合があります。Lit Wireframe
、Adaptive Opacity
、Back-face Culling
およびTextured Wireframe
チェックボックスは、必要に応じてメッシュの外観をカスタマイズするのに役立ちます。FaceBuilder のメイン設定タブにあります。Textured Wireframe
をオフにすると、ワイヤーフレームがデフォルトの明るい緑色に戻ります。ビューからワイヤーフレームの「見えない」部分をBack-face Culling
削除します。ワイヤーフレームが半透明になるので、その形状を簡単に区別できます。最後に、ワイヤフレームに照明を追加すると、ワイヤフレームの形状が少し認識しやすくなります。Adaptive Opacity
Lit Wireframe
3D モデルが硬すぎて、適切に固定できない場合があります。その場合はAuto Rigidity
、FaceBuilder のメイン設定タブでスイッチをオフにして、値を変更してみてください。0 は最小rigidityを意味し、1 は最大rigidityを意味します。たとえば、全体的な形状が完成し、小さな機能を微調整したい場合に役立ちます。
エクスポート中
通常、入力フッテージまたは写真の 3D 空間でのカメラ設定や 3D モデルの位置のないジオメトリのみが必要な場合は、FaceBuilder ノードの出力を、geo
この 3D モデルが必要な他のノードの入力に接続するだけで済みます。
結果の 3D モデルの一部が必要ない場合は、チェックボックスEars
、Eyes
、Face
、Head Back
、Jaw
、Mouth、Neck
を使用して、`FaceBuilder` のメイン設定タブでそれらをオフにすることができます。
推定カメラ設定が必要な場合は、それらをCamera (3D)
ノードにエクスポートできます。FaceBuilder 設定のタブのセクションで選択Camera
します。チェックボックスをオンのままにすると、FaceBuilder 内でカメラ設定が変更された場合に、エクスポートされたノードが更新を受け取ります。FaceBuilder の入力にノードが接続されている場合、カメラ設定をエクスポートしても意味がないことに注意してください。そのカメラを使用するだけです。Export
Results
Link Output
Camera (3D)
Camera
3D モデルを固定したフレーム内のカメラの位置を使用することもできます。その場合、エクスポートできますCamera Positions
。次に、エクスポートさCamera (3D)
れたノードには、3D モデルを固定したキーフレームのすべての変換が含まれます。
いくつかの特別な場合に、3D 空間に変換されたビルド済みの 3D モデルをエクスポートして、デフォルトの位置にあるデフォルトのカメラが、それがビルドされたフレームに収まるように表示することができます。Output Transformed Geometry
次に、チェックボックスと FaceBuilder ノードの出力のいずれかを使用するか、変換をTransformGeo
ノードにエクスポートしてから、エクスポートされたノードに保存されている変換で FaceBuilder の出力を変更できます。たとえば、テクスチャを作成するときに役立つ場合があります。
モデルが 360 度以上回転しているキーフレームが多数ある場合は、Unbreak Rotation
ボタンを使用することをお勧めします。その背後にあるアルゴリズムは、あなたが持っているすべてのキーフレームを通過し、回転を連続させます.モデルがキーフレームで 355°、キーフレーム#24
で 10° の#25
場合、ボタンを押すとキーフレームに 360° が追加#25
されるため、モデルは 370° 回転します。逆方向にも機能します: 10° の後の 355° は -5° になります。アルゴリズムが最も近い周期(180°)
でオブジェクトの回転を変更することを考慮すると、モデルがキーフレーム間で前後に回転する場合は注意する必要があります。そうすると、ボタンによって事態が悪化する可能性が高くなります。
また、3Dモデルを固定したフレームでカメラの位置を使用したい場合、カメラポジションをエクスポートすることができます。エクスポートされたcamera(3D)ノードには、3Dモデルを固定したキーフレーム内のすべてのトランスフォームが含まれます。
特別な場合、3D空間で変換された3Dモデルをエクスポートし、デフォルトのカメラでデフォルトの位置で、それが構築されたフレームにフィットして見えるようにしたいことがあります。その場合、Output Transformed Geometry チェックボックスと FaceBuilder ノードの出力、または TransformGeo ノードに変換をエクスポートし、エクスポートしたノードに保存された変換で FaceBuilder の出力を変更することができます。例えば、テクスチャを作成するときに便利かもしれません。
モデルが 360°以上回転しているキーフレームがいくつかある場合、Unbreak Rotation ボタンの使用をお勧めします。このボタンの背後にあるアルゴリズムは、あるすべてのキーフレームを通過して、回転を連続的にします。つまり、モデルが24番目のキーフレームで355°、25番目のキーフレームで10°回転していた場合、このボタンを押すと25番目のキーフレームに360°が追加され、モデルは370°回転することになります。逆方向にも動作します。10°後の355°は、-5°になります。
Unbreak Rotation アルゴリズムが、最も近い周期(180°)のオブジェクトの回転を変更することを考えると、モデルがキーフレーム間で前方や後方に回転する場合は注意する必要があります - Unbreak Rotation ボタンは、状況を悪化させる可能性が高いです。
FaceTrackerのエクスポート
バージョン2.0.0から、FaceBuilderで作成したキーフレームをFaceTrackerノードにエクスポートできるようになり、すぐにトラッキングを開始できるようになりました。
この機能はFaceBuilderで顔の表情のサポートをONにした場合のみ使用可能です。もちろん、トラッキングに使用するフッテージを使用してモデルを作成した場合のみ、この機能を使用する意味があります。そうでない場合は、従来の方法で新しいFaceTrackerノードを作成し、FaceBuilderの出力に接続することができます。