
【ラスアス2】『The Last of Us Part II』の登場人物のあまりにリアルな表情は、どのようにして実現したのか?【GDC 2021】
2021年7月19日~23日(アメリカ現地時間)に、今年度はオンラインでの開催となった世界最大級のゲーム開発者カンファレンスイベント"ゲーム・デベロッパーズ・カンファレンス 2021"(以下、"GDC 2021")。
2021年7月22日(日本時間では23日)には、『The Last of Us Part II(ザ・ラスト・オブ・アス パート2)』のカンファレンス“Emotional Systemic Facial of 'Last of Us Part II'”が行われた。
ここで語られたのは、本作に搭載されたフェイシャルシステムの開発(概念、側面、実装)について。担当したのはノーティードッグに所属するアニメーターのKeith Paciello氏と、ゲームデザイナーのChristian Wohlwend氏だ。
なお、最後の項目はゲーム終盤の展開に関するネタバレを含むので、ゲームをまだクリアーしていない方は、注意してほしい。
目次閉じる
『The Last of Us Part II』のキャラクターの表情が見せる、さまざまな感情
堅固な基礎からのスタート
システムの表現の幅を広げる
ダイアログ、コード、スクリプトについて
細かいディテールについて
ラストバトル(ネタバレ注意!)
『The Last of Us Part II』のキャラクターの表情が見せる、さまざまな感情
カンファレンスは、さまざまな表情を見せる『The Last of Us Part II』(以下『ラスアス2』)の主要キャラクターたちの、画像及びインゲームの映像から始まった。






続いて、Keith氏が語り始める。これらはフォトモードの画像のモンタージュと、ゲームの映像を使用したビデオクリップだが、ここでキャラクターたちが見せる表情は、ゲームに実装したフェイシャルシステムを使い、ゲーム内でリアルタイムに実行されているものだという。フォトモードは、フェイシャルシステムが可能にする一瞬の微妙な表情変化や、その幅広さを説明する際に役立つのだとか。

『アンチャーテッド』シリーズでは、直近の『アンチャーテッド 海賊王と最後の秘宝』と『アンチャーテッド 古代神の秘宝』に、同様の技術が導入されている。何年ものあいだ、ノーティードッグが開発したゲームのレビューを見てきたが、ノーティードッグの技術に対して、「これ以上によいものにすることなんて可能なのか?」と言う人はつねに存在するという。

多くのゲームにおいてキャラクターの顔はプレイ中も見えるが、表情豊かなムービーシーンと違って、ふつうはニュートラル、あるいは空虚な表情をしている。一方でノーティードッグ作品のキャラクターの顔はリアリティーのある造形をしているものが多かったが、そのゲームプレイ中の表情は「もっとよく出来るはずだ」と感じていたのだとか。
ノーティードッグのゲームは感情的なストーリービート(ストーリーの最小要素)に溢れている。それはムービーシーンだけでなく、ゲームプレイ全体に言えることだ。つねに、もっと力を入れられないか? 誰かが全力を注ぐことで、さらによいものになるのでは? と考えられていた。

Keith氏は映画界のアニメーション手法や演出術を学び、それらのキーアートを手掛けてきた経験から、『ラスアス2』のそうした課題に取り組む役割が与えられたという。
ゲームプレイを考慮したときの開発チームの課題は、「どうしたら我々が求める感情的な顔のパフォーマンスを目指しつつ、25時間ほど掛かるゲームプレイを完全にカバーできるか?」ということだった。ゲーム内キャラクターたちはフェイシャルリグ(CGキャラクターの顔に仕込まれている、表情筋や骨格)を持っている。その知識を得るだけでも、何らかの改善が可能なのではないかと思ったという。
ではどのように実行すべきか? 考えたのは、“ニュートラル音素セット”と呼ばれる既存の口の形を動かすのに用いられている手法を利用すること。もうひとつはシンプルに、まったく新しい手法が使えないかということだった。

まずは、これまでのゲームではどのようにして口の動きが制御されてきたのか、改めて学ぶことになった。すると、過去作で使われていた“ニュートラル音素セット”はたったひとつだったことがわかった。それ以前のゲームでもキャラクターにはニュートラル、不安、そして戦闘時という3つの異なる態度があった。もしキャラクターが戦闘中に話す場合、緊張した表情からニュートラルに戻ってセリフを言い、緊張状態に戻る。『ラスアス2』でもこの3形態の基本は変わっていない。
ダイアログ・デザイナーのトップであるMike Hourihan氏に連絡して、複数の“ニュートラル音素セット”を同時に扱うことは可能かどうかを聞いた。彼の答えは“イエス”で、プログラミングコード側で必要なものを追加する方法を説明してくれた。Mike氏が技術サイドのスタッフも動員してくれたので、とても大きな助けになったという。
Mike氏はリードプログラマーのひとりであるTravis Mcintosh氏のところへKeith氏を連れていき、技術的にどんなことが可能であるかについて話を始めた。彼らの話を聞き、Keith氏は自分たちが持つ感情を、どのようにゲーム内で表現すればよいのかと思考を巡らせたという。
堅固な基礎からのスタート
何かを始めるときには、堅固な基礎をしっかり作るのを好むというKeith氏。最初に感情について深く思案することは、直面している課題の解決においてはつねに近道になると考えていた。いくつか調査をした結果、7つの普遍的に認識可能な感情に行き着いたという。

この普遍的に認識可能、ということが、Keith氏はすごくいいと思った。ノーティードッグのゲームは世界中のさまざまな言語でプレイされているが、この7つを大事にすれば、言語を介さずとも世界中の人々とコミュニケーションを取ることも可能だと思ったからだ。
7つの普遍的に認識可能な感情とは何か? それは喜び、悲しみ、怒り、恐れ、驚き、嫌悪、そして混乱だ。この7つの感情を司る表情で、キャラクターの表現をカバーするというアイデアを、Keith氏は、かなりよいスタートだと感じた。これは広い用途に用いられるべきセットであり、複雑になり過ぎてはいないのも重要なのだという。

ちなみにここでKeith氏が自分の顔を使っているのは、他の人の顔は肖像権で保護されているからであり、好んでそうしたわけではないとのこと。
つぎの画像は、プロダクション初期段階での7つの感情を表すエリーの顔。彼女の、前作『The Last of Us』(以下『ラスアス』)から年齢を重ねた新しい外見に、新しいフェイシャルリグが取り入れられている。荒削りではあるが、ここに表現された感情には十分な可能性があると感じ、自分のアイデアを売り込む際の勝算を感じた。
インゲーム・フェイシャルの目的は、ゲームのナラティブ(物語性)にぴったり合う、幅広い感情を表現することだった。同時に、できるだけ複数の感情の繫がりを自然なものにする必要がある。フェイシャルシステム全体のゴールは、堅牢なモジュラー形式を維持しつつ、同時にメモリのコストを抑えることだった。

このアイデアを売り込んだ後、エリーがこれらの表情でゲーム内を動き回るのは、少し大げさすぎると感じた。そこで7つの感情のひとつひとつをトーンダウンしたところ、より地に足の着いた、作ろうとしている世界にマッチするものになった。トーンダウンされてもひと目で感情が認識できるバランスが理想だった。また、口は自動リップフラップという機能を使う際のことを考えて、基本は閉じているように調整した。これについては後述する。
とてもよいスタート地点にはなったが、これらのキーポーズは、パズルのほんの一部に過ぎなかった。それぞれの感情は、合致する“音素セット”とペアにする必要があった。
では、“音素セット”とは何か? ここからは、Christian氏が話を引き継いだ。“音素セット”とは永続的に区別されるサウンドの単位で、別々の単語どうしを相互に区別するために使用するものだという。本質的には私たちが言語として理解するために自然に聞き取っている、ちょっとした区別のことを指しているとのこと。
Christian氏いわく、このセッションで慣れてほしいもうひとつの重要な概念は“口形素”というもので、これはビジュアル側で音素と対等の立場にあるものだという。口形素は音素と完全にオーバーラップはしないが、口形素の中には似たような音素を使うものもある。これはCGでキャラクターを描くときの代表的な概念であり、アニメーションでは長く使われてきたものだ。
使用する数はスタジオによって異なっており、クラシックなディズニー・アニメーションは12種類の特定の口形素をキャラクターの表情に使っている。対してChristian氏たちの技術では、40種類を使用しているという。下の画像はエリーにさまざまな表情をさせる動画が流れている様子なのだが、ここでは音素セットのループがあり、40種類すべてのポーズを再生している。

この40という数値はいくつの音素が分解されているかということと、1対1の相関関係にある。このために、サードパーティーのツールを使用して分析をしており、すべての音に対して後処理を行う。このデータをゲーム内で再生し、分解した音素を1対1で音素セットから口形素へと関連付ける。
ゲーム内のいくつかの例を見てみよう。これは博物館のシーンでの過去のエリーで、ジョエルとロケットについて会話している。コードには、ふたつの異なる感情が同時に進行していることが現れているという。赤で囲われた部分には、実際の音素の内訳が書かれているとのこと。これらがエリーの顔の形状を制御しているのだ。

もうひとつの例で、いくつかの機能を紹介。こちらもふたつの感情が進行しているが、実際にはこの瞬間からは6つもの異なる音素が分解されている。技術者はエリーを制御するために3つの異なるアニメーションに関するフレームを使っている。ここでは単に音素セットから個々のフレーム間でブレンドしているのではなく、3つをまとめてブレンドしているようなものだ。これによって、複数の音素セットが組み合わされ、40フレームのうちのひとつだけを使うよりずっとダイナミックなものにできる。

ここからは実際に、どのようにゲームへと感情の概念を取り込んでいくかについて、“感情マップ”を用いて説明する。多くの感情を取り入れるためには、まずそれらを定義し、作成したアセットを使って関連付ける必要があるという。キャラクターの感情を定義するコンセプトはいたってシンプルで“プレイヤーの行動が感情に反映されること”だとか。そしてそれは、スクリプトによって制御できるようにしなければならない。

キャラクターの感情を設定するときは、「プレイヤーがどんな感情で遊ぶか?」、「ホールドタイム、ブレンドタイムはどれくらいにすべきか?」、「フェード率はどれくらいにすべきか?」といったことを決めるという。この時点でChristian氏たちはキャラクターのさまざまな感情を循環させることができ、とてもシンプルな反復空間で作業を進めることができた。