『FF7リメイク』各キャラの眼や口の動きを自動生成した技術とは?

 今年はコロナ禍の影響からオンライン開催となったCEDEC2020。本稿では各セッションから「『FINAL FANTASY VII REMAKE』におけるキャラクターアニメーション技術」の模様を記す。

『FINAL FANTASY VII REMAKE』におけるキャラクターアニメーション技術。

 登壇者はスクウェア・エニックス第1開発事業本部ディビジョン1の原龍(リードアニメーションプログラマー)と岩澤晃(フェイシャルディレクター)の2名(本稿は主に岩澤がフェイシャルアニメーションについて語った後半で構成している)。

眼球の移動、まばたきなどを自動生成する方法

応用としてGaze Diversion(無意識に視線を逸らす)もあるが、今作では行っていない。

 フェイシャルアニメーションのうち、まず眼の動きから解説。視線を移動させる時、眼球が短い時間で移動と停止を繰り返している状態をSaccade(サッカード:眼球移動)と呼んでいる。一度に移動する角度には制限をかける一方、視線を向けた状態で対象物がゆっくりと移動する場合のみ、リニアに動くようにしている。

 また視線を固定している時でも、眼球が止まることなく細かく動いている状態をMicro Saccadeと呼んでいる。Micro SaccadeはSaccadeよりも移動と停止の周期が速いため、動きの幅を小さくしている(今作では行っていないが、感情の変化などでMicro Saccadeの周期や幅を変えることは効果的だと考えている)。

まぶたとSaccadeの連動を、さらに細かく設定するような感覚。

 まばたきにもパターンがあり、時間経過によって発生する周期性まばたき、急な眼球運動によって発生する反射性まばたきがある。前者は2秒から10秒でランダム発生、後者は対象位置が大きく移動すると発生する(完全に閉じたまばたきが発生した場合は、Saccadeの移動角度制限を無視)。

 まばたきのアニメーションは、目を閉じたポーズモーションをブレンド、時間とブレンド率のカーブはアセットで設定している。まばたきは常に完全に閉じるわけでもなく、0.5~1のランダムバイアスをブレンド率にかけている(今後は、まばたきの速さや周期を感情によって変えることも考えていきたいと思っている)。

専用のフェイシャルアニメーションが存在する場合、自動生成されたSaccadeは無視される。

 そしてキャラクターの体の動きからも、Saccadeの自動生成を試みた。体が激しく動いているようなボディモーションでは、体幹と顔の向きからSaccadeを自動生成している。もともとカットシーンなど手付けでアニメーションの作業をする際、Maya上で使用しているツールが、フィールドギミックやバトルアクションでも有効だったためUnreal Engine 4でも実装した(生成されたSaccadeはUE4でも調整が可能)。

関連記事