フェイストラッキングのカスタマイズ
ブループリントのカスタマイズ
初心者ナビの基本設定手順中に、[フェイストラッキングをカスタマイズ...] をクリックしてトラッキングのブループリントをカスタマイズできます。
フェイストラッキングをカスタマイズします
利用可能なオプションは以下のとおりです。
- BlendShapeマッピング: モデルに一致するBlendShapeマッピングを選択します。たとえば、モデルにパーフェクトシンク(ARKit BlendShape)がある場合は、ARKitを選択します。モデルがMMDモデルから変換されている場合は、MikuMikuDanceを選択します。それ以外の場合は、VRMを選択します。デフォルトでは、BlendShapeマッピングを自動的に検出しようとしますが、この設定で上書きできます。
- 頭とボディのモーションを有効にする: 有効にすると、Warudoはトラッキングデータに従ってキャラクターの頭と身体を動かします。無効にすると、顔(BlendShapeと目のボーン)のみモーションが有効化されます。頭と身体をすでにトラッキングしているフルトラッキングシステムを使用する場合、基本設定で自動的に [いいえ] に設定されます。
- 頭の待機アニメーション (自動まばたき / Auto Eye Movements / Auto Head Movements): 有効にすると、キャラクターに微妙な頭の動き、目の動き、まばたきを追加します。
- ターゲットを見る: 有効にすると、キャラクターは前を向いたときにターゲット(デフォルトではカメラ)を見つめます。これにより、キャラクター(あなた)はカメラの位置に関係なくリスナーとアイコンタクトを維持しながら、自由に周囲を見回すことができます。
- リップシンク: 有効にすると、あなたの発声に基づいてキャラクターの口を動かします。トラッキングが失われた場合にのみリップシンクを有効にするか、常に有効にするかを選択できます。
上記のオプションは、生成されたブループリントに影響します。したがって、セットアップ後にこれらのオプションを変更するには、セットアップを再実行するか、フェイストラッキングのブループリントを手動で修正する必要があります。[キャラクター] → [モーションキャプチャー] → [ブループリントナビゲーション] には、変更したいブループリントの特定の部分へのショートカットが用意されています。
トラッカーのカスタマイズ
基本設定後、対応するフェイストラッキングアセット(iFacialMocapレシーバー、MediaPipeトラッカーなど)に移動して、トラッキングデータ自体をカスタマイズできます。次のオプションが利用可能です。
- ミラートラッキング: 有効にすると、Warudoはトラッキングデータをミラーリングします。
- BlendShape感度: キャラクターの表情の感度を調整します。表情の変化が鈍すぎる場合は感度を上げ、敏感すぎる場合は感度を下げます。
- BlendShapesマッピングの構成: 各BlendShapesのしきい値と感度を個別に調整します。これは、特定のBlendShapesを無効にする場合や、各BlendShapesの感度を個別に調整する場合に便利です。
左の2つの値はトラッカーからのBlendShape入力値の範囲で、右の2つの値はキャラクターへのBlendShape出力値の範囲です。たとえば、入力範囲が 0~1 で出力範囲が 0~2 の場合、BlendShape入力値が 0.40 のとき、BlendShape出力値は 0.80 になります。- Blendshapeを無効にするには、右上の値を 0 に設定します。
- Blendshapeの感度を高めるには、右上の値を増やします。Blendshapeの感度を低 くするには、右上の値を下げます。
- より高いしきい値でBlendshapeをトリガーするには(たとえば、キャラクターの口はすでに少し開いているが、口はまだ閉じている)、右下の値を増やします。より低いしきい値でBlendshapeをトリガーするには、右下の値を下げます。
- 頭の動き/回転度: 頭の動き/回転の強度を調整します。
- 身体の移動幅: 頭の動きに自動追従する身体の動きの強度を調整します。
- 身体の回転タイプ: 頭が回転すると、身体も自然に回転します。[なし] に設定すると、頭が回転しても身体は回転しません。[標準] に設定すると、身体は頭と同じ方向に回転します。[反転] に設定すると、身体はX軸とY軸では頭と同じ方向に回転しますが、Z軸では反対方向に回転します。 [Body Rotation Type] を [カスタム] に設定すると、各回転軸の方向と大きさの両方をカスタマイズできます。
- 目の動きの幅: 目の動きの強度を調整します。目がギョロギョロ動いてしまう時は、この数値を下げてみましょう。
- 目の動き補正: 瞳孔の動きの強度を調整します。頭の回転とは反対方向に目を自動回転させ、視線を補正します(現在はボーンベースの目のみサポートされています)。
- 目のまばたき感度: ばたきの感度を調整します。これは、[BlendShapesマッピングの構成] で、まばたきのBlendShapesの感度を調整するためのショートカットです。
- 強制同時まばたき: 有効にすると、両目が同時にまばたきするよう 強制します。トラッキングが正確でなく、それぞれの目を個別にまばたきできない場合に便利です。
- 目の動きにボーン/BlendShapeを使用する: 目の動きに目のボーンを使用するか、BlendShapeを使用するかを指定します。モデルに目のボーンがある場合は、目のボーンを使用することをおすすめします。目のボーンの方が正確で、IKも可能だからです。 [BlendShapeを使用した目のコントロール] を有効にする必要があるケースが2つあります。:
- モデルに目のボーンがない場合。
- モデルの目のBlendShapeが目のボーンを補完する場合。つまり、目のBlendShapeが目の形を変え、目のボーンが瞳を動かす場合です(これが当てはまるかどうかは、モデラーに確認してもらう必要があります)。
よくある質問
頭を動かすと、キャラクターの身体も動きます。これを無効にするにはどうすればいいですか?
これは、モーションキャプチャレシーバーアセットの [身体の移動幅] オプションによって発生します。身体の動きを無効にするには、この値を 0 に設定します。
リップシンクを有効にするにはどうすればいいですか?
基本設定の手順中に、[フェイストラッキングをカスタマイズ...] をクリックし、[リップ同期] を有効化することで、リップシンクを使用できます。
基本設定の手順後に、 [キャラクター] → [モーションキャプチャー] → [ブループリントナビゲーション] → [リップ同期設定] をクリックしてリップシンクの設定を調整できます。
私の口は閉じているのに、モデルの口は少し開いています
これは通常、ARKitと互換性のないモデルにARKitトラッキングを適用することによって発生します。修正するには、次のいずれかを実行します。
- モデルにパーフェクトシンク(ARKit BlendShape)を追加します。ARKit ベースのフェイストラッキングは表現力がはるかに豊かであり、トラッキング データがすでにあるため、これをおすすめします。
- トラッカーアセットで [BlendShapesマッピングの構成] をクリックし、ARKitの口のBlendShape設定である
jawOpen
、mouthFunnel
、mouthPucker
のしきい値を上げます。( 右下の値を-0.25
のような負の数値に設定します)
頭を回すと身体が反対方向に回転します
デフォルトでは、[Body Rotation Type] は [Inverted] に設定されており、Live2Dモデルを模倣してよりアニメのような外観を実現します。これを無効にする場合は、[Body Rotation Type] を [Normal] または [None] に設定します。