『モンスターハンターライズ』Nintendo Switch向け最適化で施した工夫を、開発者が海外メディアに語る。描画処理手法から作り変える開発者の意地

Pocket
reddit にシェア
LINEで送る

カプコンが今年3月26日に発売した、Nintendo Switch向け新作『モンスターハンターライズ』。PlayStation 4やXbox Oneといった据え置き機に比べて、性能的に水をあけられているNintendo Switch向け『モンハン』開発には、多数の努力と工夫が凝らされていたようだ。海外メディアNintendo Lifeによるインタビューのなかで、同作ディレクターの一瀬泰範氏が語っている。


まずは『モンスターハンターライズ』の技術的背景について説明したい。同作の開発については、カプコンの内製ゲームエンジン「RE ENGINE」が使用されている。同エンジンは「MT FRAMEWORK」と呼ばれる内製エンジンの後継として開発されたもので、単独のエンジンで幅広いゲームの実装を可能にしている。さまざまなジャンルのタイトルを多機種に展開することを視野に入れたエンジンだ。

RE ENGINEは『デビルメイクライ5』や『バイオハザード ヴィレッジ』などの最先端グラフィックを実現するタイトルなどに採用され、現在、カプコンのゲーム開発を支える屋台骨となっている。一方で、RE ENGINEはNintendo Switchをはじめ、各プラットフォームで展開されており、『帰ってきた 魔界村』や『カプコンアーケードスタジアム』などの2D作品や移植にも利用されている。こうした柔軟性も同エンジンの強みのひとつだろう。


また、インタビューの中で一瀬氏は、MT FRAMEWORK からRE ENGINEに移行したことで、ゲームのビルド時間が約10秒と高速化し、「(MT FRAMEWORKと比較して)1/100ほどに短縮された」としている。ビルド時間とは、ざっくり説明するならば、ゲームをプログラムコードから実際に動作する形式に変換する処理(ビルド)の完了までにかかる時間だ。これは、プレイヤーが実際にゲームを遊ぶ際のパフォーマンスに直接影響するものではない。しかし一瀬氏によれば、開発サイクルの効率化が最終的にゲームの質の向上にも繋がっているとのこと。この点もRE ENGINEの利点のひとつと言えるだろう。

Nintendo Switchの描画性能は、持ち運び可能なこともあり、同世代コンソールに比較してかなり限定されている。しかし、RE ENGINEの拡張性を活かし実装された『モンスターハンターライズ』は、性能面の制約を克服して安定した動作を実現。同作は発売後、技術面において各メディアより高い評価を得ている(関連記事)。しかし、同作の実装において具体的にどういう工夫がなされたのかは、外部からの分析によって推して知るほかない部分がほとんどだった。今回のインタビューでは、開発者自らの口によって同作の実装にまつわる工夫が語られることになった。


グラフィック周辺が大きな課題に

「Nintendo Switch向けのRE ENGINE使用作品は珍しいが、実装に向けてどのような調整がなされたか」と聞かれた一瀬氏は、技術面について説明した。同氏は「RE ENGINEは他機種展開を視野に入れているため、単純な移植については難しいものではない」と述べた上で、Nintendo Switchに採用されているグラフィックスAPI、NVNなどへの適応については、苦労があったと明かした。

NVNは、Switchで採用されている3つのグラフィックスAPIのひとつで、任天堂とNVIDIAが協力して開発したもの。これは平たく言えば、Nintendo Switchとゲームプログラムの間での、データのやりとりを簡便にする“窓口”のようなものだ。各コンソールやPCでは、共通のものもあれば、違う種類の窓口(グラフィックスAPI)が用意されている場合もある。つまり、ゲームの移植に際しては必ず配慮しなければならない部分だ。


一瀬氏は具体的に苦労した部分として、ゲーム映像の陰影などをつかさどるシェーダーの移植についての工夫を語った。RE ENGINEではHLSLという言語をつかってシェーダーを記述しており、移植にあたってはNintendo Switchが採用しているGLSLに変換する必要があったとのこと。HLSLからGLSLへの翻訳プログラムの実装にあたっては、描画を最適化するためのいくつかの“仕掛け”がなされたという。ほかにもテクスチャ圧縮技術のサポートを盛り込むなど、Nintendo SwitchのGPUに向けた工夫が凝らされているそうだ。

また、一瀬氏によれば、開発の初期段階では同作のパフォーマンスはかなり酷いものだったそうだ。そのため、開発チームはまず3Dグラフィックの描画処理手順を大きく変更したとのこと。過去、RE ENGINEではディファード(遅延)レンダリングという描画手法を基本としていた。『モンスターハンターライズ』では、Nintendo Switchの性能に合わせ描画手法をフォワード(前方)レンダリングに変更。そのほか、こまかい技術面の工夫も含めて、エリアの光源配置に至るまで多数の最適化が施されたとのことだ。

過去作のアセットも活用

『モンスターハンターライズ』の開発には過去のシリーズ作品の資源も利用されているとのことだ。たとえば、描画が難しく課題となる「毛」の表現については、『モンスターハンター:ワールド』のシェーダーを移植して対応。モーションのデータなどについては、コンソールの性能が限られていることからニンテンドー3DS時代のシリーズ作品のデータが役に立ったそうだ。しかし、『モンスターハンター:ワールド』で大きく高精細かつなめらかなグラフィックに進化したこともあり、「現代作品らしく」感じさせるために慎重な調整を加えた上で利用されているとのこと。

『モンスターハンターライズ』ではモンスターに騎乗する操竜や、壁を走るなどの新しいアクションも追加されている。そのため、モーションについては過去作のデータを利用しつつも、モーションキャプチャ企業である活劇座などの協力の上で、同作にふさわしいものとなるよう多くの努力を重ねて実装したそうだ。


「特に気に入っている描画についての工夫や調整はあるか」と問われた一瀬氏は、テクスチャ読み込みについての工夫を挙げた。『モンスターハンターライズ』では、カットシーンの最中にテクスチャの読み込みを完了させるように実装しているそうだ。また、NPCキャラのテクスチャについては、圧縮された低画質のものではなく、高画質のものが読み込まれるようになっている。この工夫によってカットシーンの見た目はより良くなり、操作中のメモリ使用量も節約できるとのことだ。

また、同作では小さなオブジェクトについて、描画負荷軽減のためカメラが遠ざかると消えるようになっている。この点についても、突然消えたり現れたりしているように見せないために、徐々に表示/非表示が変わるような描画にしているとのこと。消える距離などについてはオブジェクトごとに手作業で指定しているそうだ。

ほかにも、前述のフォワードレンダリングに変更したことで利用に支障が出た技術についても、工夫して実装しているそうだ。例として陰影にまつわる描画技術「SSAO(Screen Space Ambient Occlusion)」と、反射面の表現を効率化する技術「SSR(Screen Space Reflection)」 が挙げられている。こうした技術を妥協を許さず実装したことが、影の描画や水面の反射など、グラフィックの印象の向上に役立っているのだろう。


一瀬氏はインタビューの中で、「『モンスターハンターライズ』のグラフィックは、多数の工夫や調整の上に成り立っており、それらすべてを平等に誇りに思っています」と述べている。称賛を得た同作のNintendo Switch向け最適化の影には、やはり並々ならぬ工夫と努力があったようだ。今回のインタビューは、そうした開発の裏側を知ることができる貴重な資料だった。

Pocket
reddit にシェア
LINEで送る