『Bye Sweet Carole』におけるアニメーションの流動性とプレイヤー入力のバランス

『Bye Sweet Carole』(本日公開) は、古典的なアニメーション化されたプリンセスの美学と、ホラーやマカブレを融合させ、すべて従来のアニメーション技術で命を吹き込みました。Little Sewing Machine の脚本・監督で『 Remothered』 シリーズのクリエイターである Chris Darill 氏と Dreams Uncorporated のリードプログラマー Alvaro Martinez 氏に、Unity でリアルタイム環境用の手描きグラフィックスを制作するテクニックと課題についてインタビューしました。
Chris Darill 氏は、『Bye Sweet Carole』を、1990 年代に一緒に育ったアニメーション映画(および悪名高きスピンオフゲーム)への賛辞として表現しています。「私は伝統的なアニメーションを忠実に支持しています。「『Bye Sweet Carole』は章ごとに異なるため定義が困難ですが、『Clock Tower』のような昔ながらのホラーゲームと、『Dragon's Lair』や『The Secret of Monkey Island』のようなポイントアンドクリックアニメーションゲームを組み合わせたようなものです。」
この野心的なタイトルには、11 人のプロのアーティストチームによる手書きの伝統的なアニメーションアセットとビジュアルが多数使用されています。リードプログラマーのAlvaro Martinez氏は、最終的なゲームのアートアセットの約95%は手描きで、残りの5%はシェーダーとポストプロセッシングエフェクトによって制作されたと見積もっています。
「『Bye Sweet Carole』のほぼすべての要素もリアルタイムで行われます。これほど多くのフレームがあるこのようなスタイルのゲームは非常に珍しい」と Chris は付け加えます。「史上最も複雑なアニメーションゲームのひとつかもしれません!」
課題の特定
このビジュアルスタイルでゲームを制作するには、詳細なフレームとスムーズなトランジションが必要です。しかし、初期のテストでは、グラフィックスとゲームプレイの間に大きな乖離があることがわかりました。さまざまなアクションのアニメーションは見栄えがしましたが、対応する入力が自然に感じられず、反応が遅くなっていました。ビジュアルの流動性と入力の応答性のバランスは、チームにとってすぐに解決すべき重要な課題となりました。
『Bye Sweet Carole』には、ゲーム内の異なるポイントで複数のプレイアブルキャラクターが登場します。アニメーションに関しては、メイン主人公の Lana Benton(ウサギに変身可能)が最も複雑で、人間とウサギの両方の形態のアクションとアニメーションの完全なスイートを備えています。問題は、これらの異なるアニメーションをすべて、異なる動き間の遷移中にスムーズにブレンドすることでした。
「私たちは 15 fps と 24 fps を交互に切り替えてアニメーションを作っているので、あるアニメーションから別のアニメーションに突然遷移すると、見た目が非常に悪くなります」と Chris は言います。「同時に、非常に長いアニメーションブレンドを使用した場合、ゲームプレイに応答性を感じませんでした。」

行列フレームを入力する
緊張感のあるプラットフォームとかくれんぼの仕組み(1 回間違えばゲームオーバーになることもある)を組み合わせたゲームにとって、このラグは許容できるものではありませんでした。チームのクリエイティブな解決策は、「マトリックスフレーム」と呼ばれるものを中心としたシステムを開発することでした。彼らはまず、Lana の歩行と走行のサイクルを、動きの架け橋となるような見た目のフレームをいくつか組み込むことから始めました。これらのサイクルの中で、他のアクションの普遍的な出発点となる特定のフレーム(行列フレーム)を指定します 。
この新しいシステムでは、プレイヤーが Lana の実行中にジャンプ入力を押すと、ゲームは実行サイクルが完了するまで待機しません。代わりに、最も近い行列フレームにジャンプし、その特定のポイントからジャンプアクションを開始します。これにより、アニメーションがクリーンで予測可能な位置から「起点」となり、プレイヤーに知覚される入力ラグが大幅に軽減されます。この技術により、ビジュアルスタイルを損なうことなく、ホラーゲームでプレイヤーが行う必要があるような唐突で応答性の高いアクションが可能になります。

生産のスコーピング
Bye Sweet Carole 氏は、従来のアニメーションに揺るぎないこだわりを持っており、チームはアセット作成のための厳密なフレーム単位のワークフローを確立する必要がありました。Chris は、キャラクターアニメーションがどのように組み合わさるのかを概説しました。
• ラフ/ストーリーボード:アクションを定義するための初期スケッチ
• クリーンアップとトゥイーン:キーフレームを洗練し、フレームを追加して滑らかにする
• カラーリング:最終カラーパレットを適用する
• エクスポート:Unity エディターにインポートするファイルの準備
アセットのエクスポートが最大の障壁であることがわかりました。固定カメラを使用したカットシーンの場合、そのプロセスは簡単でしたが、ゲームの動的なキャラクターアニメーションはもっと複雑であることが証明されました。各フレームは、キャラクターがゲームワールド内で正しく動くように、ピボットポイントを中心にしてエクスポートする必要がありました。これは、特に『Mr. Baese』のような大きなプレイアブルキャラクターについては、細かくカットしてエディター内でピボットポイントを中心に組み立て直す必要があったため、入念なプロセスでした。

パフォーマンスと最適化に取り組む
『Bye Sweet Carole』はデスクトップとコンソールで同時にローンチされます。ほとんどのプラットフォームで、非常に高解像度のアセットを使用して 60fps の目標を達成するには、統制のとれた最適化が必要でした。Alonzo は、いくつかの重要なテクニックを概説しました。
スプライトアトラスの活用:スプライトは機能に基づいて整理され、アトラスにまとめられます。例えば、Lana の歩行アニメーションにはそれぞれ独自のアトラスがあります。(Alvaro 氏は、これは標準的なプラクティスですが、Unity の 2D Renderer でメモリを管理し、高速なレンダリングを実現するためには不可欠だったと述べています)。
アグレッシブなプロファイリング:メモリオーバーフローは一般的な問題でした。ディーププロファイリングは、CPU/GPU のボトルネックとメモリリークを特定して修正するのに役立った。
アセットの圧縮とストリーミング:各スプライトアトラスの圧縮アルゴリズムと形式は慎重に検討されています。サウンドアセットは、必要に応じてアセットストリーミングを使用してロードおよびアンロードされ、メモリフットプリントを最小限に抑えます。

クラシックへの敬意
Little Sewing Machine と Dreams Uncorporated は、テクニックと創造性を徹底した技術的最適化とのバランスを取ることで、クラシックアニメーションの懐かしさと、プレイヤーが現在期待する滑らかで応答性の高いゲームプレイを融合させ、Chris Darill 氏のビジョンを見事に実現しました。
「このような才能あるプロフェッショナルと一緒に仕事ができたことは本当に幸運でした」と Chris は言います。「最初は、このクレイジーなアイデアが上手く行くかどうか自信がありませんでしたが、関係者全員と私たちが作ったものを本当に誇りに思っています。」
『Bye Sweet Carole』は現在、デスクトップとコンソール向けにリリースされています。Made with Unity プロジェクトについては、Steam 公式キュレーターページをご覧ください。Unity ブログとリソースハブで、開発者によるストーリーをさらに読むことができます。
