従来のアニメーションは、一連のキーフレーム化されたポーズで構成されます。これらは、タイムライン上でブレンドされて必要な動作を実現します。 フェイシャル アニメーションでは、カーブで操作されるアニメーションは非常に一般的です。様々なウェイト付けした値を使って特定の表現を操作できるからです。 UE4 のアニメーション システムは、Animation Pose アセット (または短縮して Pose アセット ともいいます) という特殊なアセットを使ってカーブで操作するアニメーションもサポートしています。
Pose アセット は、通常のアニメーション カーブを使って (アニメーション内にこうしたものが存在する場合) 複数ポーズ間で加算的にブレンドすることができます。 これにより、純粋にアニメーション カーブのデータによって操作されるフルボディ アニメーションを作成することができます。または、FACS (Facial Action Coding System) や Viseme を使ってフェイシャル アニメーションを作成することができます。
ブレンドがどのように機能するかを示すために、以下の 2 つのポーズを検討します。
![]() |
![]() |
---|---|
Pose A | Pose B |
各ポーズの値にウェイト付けし、その結果の出力ポーズを作ります (上部の画像)。
![]() |
![]() |
![]() |
|
---|---|---|---|
Pose A Weight | 0 | 1 | 0.5 |
Pose B Weight | 1 | 0 | 0.5 |
上記で、Pose A を 0 に、Pose B を 1 (完全に影響を与えます) にウェイト付けした結果のポーズが、 Pose B (右足を前) になります。 上記で、Pose A を 1 に、Pose B を 0 にウェイト付けした結果のポーズは左足を前になります。 ただし、両方とも 0.5 にウェイト付けをすると、キャラクターがじっと立ったままになる中間のポーズになります。 こうしたウェイト付けした値を使うことで、アニメーション シーケンス のタイムライン上で Pose A と Pose B をブレンドして新しい動作を作成することができます。
例えば、以下ではカーブ データを通して歩行する動作を作成しました。
以下の動画のようにフェイシャル アニメーションを作成するためにこのプロセスを使用することもできます。
上の画面では、様々なポーズのためのカーブ データを含むアニメーション シーケンスがあります。
上の例では実験的な Facial Animation Bulk Importer プラグインを使用しています。これは、フェイシャル アニメーションのカーブ テーブルを (FBX から) sound wave (音声波形)にインポートします。