みなさん、こんにちは。
今回から、2023年6月22日に発売された国民的人気ゲーム「ファイナルファンタジー」の新作 16 のグラフィックス表現についてお話していきます。
ファイナルファンタジー(以下FF)と言えば「RPG」というイメージが強いですが、本作は「アクションRPG」になっています。
ストリートファイターやモンスターハンターで有名なカプコンの技術者がアクション部分を監修しているそうですが、アクションゲーム初心者にも遊びやすい簡単な操作になっていました。
ドラゴンクエスト11はじめ、近年のAAAゲームは「UnrealEngine」や「Unity」といったゲームエンジンで制作されることが多いですが、FF16は何かしらのゲームエンジンが使われているという情報はありませんでした。
過去に発売されたFF14では自社製のゲームエンジン「クリスタル・ツールズ」が使われているそうです。
ゲームエンジンはゲームを作る土台部分であり、グラフィックス表現に関しても様々なタイトルで使いまわしができるため、リソース面でのコストカットができるメリットがあります。
そのため、FF16のグラフィックス表現に関しては、完全に筆者の主観によるものですのでご了承ください。
© 2023 SQUARE ENIX CO., LTD. All Rights Reserved.
まずは、上記画像をご覧ください。
キャラクターと岩の中心に、クリスタル(ケイ素)がでかでかと並んでいます。
FF16はPlayStation5(PS5)で制作されていますが、PS5の機能の目玉として「リアルタイムレイトレーシング」というのがあります。
レイトレーシングは1980年代ぐらいから考えられてきた光線追跡方法であり、光の屈折をシミュレートするためとてもリアルな陰影を表現できる技術なのです。
しかし、とても計算量が多く、ゲームのような1秒間に30 or 60枚のコマ数を必要とするリアルタイムな用途には適用はできませんでした。
それが、GPUの進化により、リアルタイムにレイトレーシングできる機能がPS5のGPUに内臓されました(GPU単体としては2018年頃にリリースされたNVIDIAのGeForce GTX2060が最初)。
リアルタイムレイトレーシングが出る前の陰影表現(レンダラー)は、Zバッファ法というものが主でした(特に90年代、2000年代はZバッファ法の技術が発展し続けていた)。
しかし、Zバッファ法には限界がありました。
特に、半透明の物体が前後に重なった時の表現に矛盾が生じました(Zソートなどを駆使してもどうしても半透明の奥に透けて見える物体が消えるなど)。
レイトレーシングを使うと、半透明の物体の透け具合まで正確に表現できるそうです。
そこで、FF16ではレイトレーシング技術は使われているのか?と思い、ゲーム内を探索してみました。
結論から言うと、使われているかどうかは不明でした。
というのも、このゲームは、半透明の物体はほぼ登場しません。
画像のようなクリスタルのような物体がごく稀に登場する程度です。
しかも、画像のクリスタルは屈折率よりは反射率のほうが高いようで、周囲の景色を環境マップ(?)で反射させている様子が見受けられます(クリスタルに周囲の岩肌が映り込んでいる)。
リアルタイムレイトレーシングの機能を確認するには、ほかのゲームのほうがよいようです。
いかがでしたでしょうか?
筆者は10年以上グラフィックス関連の技術から離れていたため、知らない技術や間違いなどもあるかと思いますが、次回も引き続き考察していきたいと思います。