『GTA 6』、プリセットアニメーションからリアルタイム物理演算へ移行

物理学
GTA 6 is Trading Canned Animations for Real-Time Physics
Rockstar Gamesは、あらかじめ用意された破壊描写を廃止し、ガラスの破砕や車両の損傷をリアルタイムで計算するプロシージャル物理システムを採用する。

ネオンに彩られたVice Cityの高級店の角に、9mm弾が1発、かすめていく。他のほとんどのゲームであれば、これは予測可能な一連の動作を引き起こすだろう。ソフトウェアはライブラリにアクセスし、『glass_shatter_heavy.mp4』のような名前のファイルを読み込み、それを再生する。それはデジタルな仮面、つまり「何かを壊した」とプレイヤーに思わせるための巧妙な演出に過ぎない。しかし、『Grand Theft Auto 6』において、その仮面は取り払われようとしている。

Rockstar Gamesから漏洩した技術的な詳細や最近の開発状況は、同スタジオがこうした「決め打ち(カンド)」のアニメーションから脱却しようとしていることを示唆している。代わりに、RAGEエンジンはプロシージャル物理(手続き型物理演算)を用いて破壊を計算するように作り替えられている。弾丸が窓に当たったとき、ゲームはビデオを再生するのではなく、物理シミュレーションを実行する。弾丸の質量、衝撃の速度、そして材質の構造強度を計算し、ガラスがどのように破損すべきかを正確に判断するのだ。

これは単なる視覚的な演出にとどまらない。現代のコンソールがプレイヤーを取り巻く世界をどのように処理するかという点における、根本的な変化を意味している。私たちは、スクリプト化された結果の世界から、数学的な帰結の世界へと移行しているのだ。射撃の角度がわずかでも変われば、破片の飛び散り方もそれに応じて変化する。同じ窓を全く同じ方法で2度壊すプレイヤーは、誰一人として存在しないだろう。

スクリプト化された衝突の終焉

何十年もの間、ゲーム開発者は混沌をシミュレートするために、「煙と鏡(誤魔化し)」の手法に頼ってきた。2013年の時点で車を壁にぶつければ、ゲームは無傷の車のモデルをへこんだモデルに差し替えていた。それは「無傷」か「損傷」かというバイナリ(二元)状態だった。Rockstarの新しいアプローチは、オブジェクトを静的な形状としてではなく、素材の集合体として扱う。各衝突はグラフィックエンジンによって個別に処理され、これまで家庭用ゲーム機では不可能だったレベルの緻密な詳細を可能にしている。

このプロシージャルシステムは、衝撃の正確なポイントを評価し、独自の視覚的結果を生成する。混雑したショッピングモールでのカーチェイスを想像してほしい。これまでの作品では、メモリを節約するために瓦礫はほぼ瞬時に消えていた。この新しいシステムでは、瓦礫もシミュレーションの一部となる。ガラスの破片や木材のささくれ一つひとつが独自の物理特性を持ち、摩擦と重力の法則に従って跳ね返り、落ち着くのだ。

その技術的な代償は大きい。これらの相互作用をリアルタイムで計算することは、CPUに多大な負荷をかける。PlayStation 5とXbox Series Xは高速なロード時間で称賛されてきたが、複雑な物理演算を処理する能力こそが真のボトルネックとなる。Rockstarは、スクリプト化されていない混沌から得られる没入感は、処理コストを払う価値があると判断したようだ。

なぜガラスはエンジニアにとって悪夢なのか

なぜ窓のようなありふれたものに、これほど多くのエンジニアリングの努力が注ぎ込まれているのかと不思議に思うかもしれない。物理学者にとって、ガラスは悪夢のような存在だ。それはアモルファス固体であり、整然とした結晶構造を持たない物質である。それが壊れるとき、単に割れるのではなく、表面全体に衝撃波を送り、雷のように分岐する亀裂を生じさせる。

これをビデオゲーム内でシミュレートするには、応力と歪みに関する複雑な方程式をミリ秒単位で解く必要がある。『GTA 6』では、RAGEエンジンがガラス板を動的メッシュとして扱っていると伝えられている。物体がメッシュに当たると、エンジンは表面全体の張力を計算する。張力が一定の閾値を超えると、メッシュは「抵抗の少ない経路」に沿って引き裂かれる。これが、プロシージャルなガラスがアニメーションよりも遥かにリアルに見える理由だ。つまり、素材が実際に物理的に崩壊する様子を模倣しているのである。

この緻密さは車両の変形にも及んでいる。新しいゲームの車体には「あらかじめ設定された損傷ゾーン」はなく、衝撃の強さと方向に基づいてひしゃげるように設計されている。時速60マイルで左前のバンパーを街灯にぶつければ、エンジンはその力がシャーシを伝わってどのように伝達されるかを計算する。これは、おもちゃの車につく傷と、実際の機械が人生を変えるほどの衝撃を吸収する際の違いに等しい。

バンガロールのテスト拠点

これほど複雑なシステムを構築することと、それがプレイヤーのコンソールを発火させないようにすることは別問題だ。Rockstar Indiaでの最近の採用活動は、スタジオが大規模な品質管理体制の強化に取り組んでいることを示唆している。バンガロールの拠点は現在、情報筋が「最終段階」と呼ぶ開発に向けたテスト専門家を募集している。彼らの仕事は単にゲームをプレイすることではなく、物理演算を「壊す」ことだ。

スクリプトをシミュレーションに置き換えると、予測不能なバグの扉を開くことになる。プロシージャルなガラスの破片が理論上、キャラクターモデルを突き抜けて物理的な「爆発」を引き起こし、車両が成層圏まで吹き飛ぶといった事態も起こり得る。スクリプト化されたゲームが安全なのは、開発者が何が起こるかを正確に把握しているからだ。シミュレーションの世界では、何が起こっても不思議ではない。インドのQAチームは、数学的根拠が破綻しないことを確認するために、あらゆる表面に車をぶつけ続ける膨大な時間を費やしているはずだ。

開発のこの段階は、往々にして最も過酷だ。物理エンジンが「不可能な」結果を生み出してしまうような境界条件を特定する必要があるからだ。プレイヤーがバイクで板ガラスを特定の角度で突き破ったとき、ライダーのラグドール物理とガラス片の相互作用をエンジンは正しく処理できるだろうか?こうした目に見えない努力こそが、技術的な傑作とバグだらけの失敗作を分かつのである。

現在のコンソールは実際にこの計算を扱えるのか?

現行世代のハードウェアが、果たして本当にこの課題に対応できるのかという疑問は根強く残っている。過去にも高度な物理演算を約束しながら、発売前に規模を縮小したゲームはいくつもあった。Rockstarにとっての課題は、CPUが何千もの個別の物理演算を計算している最中も、安定したフレームレートを維持することだ。忙しい交差点でのたった一度の爆発でさえ、数百のオブジェクトが同時に相互作用する可能性がある。

これを解決するために、Rockstarは「非同期演算(asynchronous compute)」と呼ばれる手法を使用している可能性が高い。これにより、コンソールは次のフレームの描画を停止させることなく、バックグラウンドで物理計算を処理できる。これは繊細なバランス調整だ。もし物理エンジンが瓦礫の着地点を決定するのに時間がかかりすぎれば、ゲームはカクつく。逆にシミュレーションが単純すぎれば、没入感は損なわれる。

また、Xbox Series Sの問題もある。Microsoftの非力なコンソールは、技術の限界を押し広げようとする開発者にとって、しばしば足かせとなってきた。『GTA 6』の物理システムが、特定の素材を撃ち抜いたり、瓦礫を遮蔽物として使ったりするなど、ゲームプレイの中核を成すものであるならば、この非力なハードウェアでも動作させなければならない。これはしばしば「最低公倍数」的なアプローチをもたらすが、Rockstarには、どのハードウェアで動作する場合でも、その性能を極限まで引き出す高い拡張性を持つエンジンを構築してきた歴史がある。

ゲームデザインへの波及効果

もしこの物理システムが機能すれば、ミッションの設計方法そのものが変わる。これまでの『GTA』シリーズでは、建物は破壊可能か、あるいはそうでないかのどちらかだった。どの壁を爆破できるかは、ゲームが教えてくれたため知ることができた。リアルタイムのプロシージャルな破壊によって、環境は戦術的なツールとなる。プレイヤーはただ敵を撃つのではなく、物理エンジンが残りの処理を行ってくれることを期待して、敵の頭上のシャンデリアを撃つようになるのだ。

これはプレイヤーの役割を、スクリプトに従うことから、システムを実験することへと変化させる。これが開発者の言う「エマージェント・ゲームプレイ(創発的ゲームプレイ)」を生む。これこそが、パブで友人に語りたくなるような瞬間だ。物語の一部だったからではなく、物理エンジンが思いもよらない、奇妙で素晴らしい挙動を見せたからである。ガードレールの金属が正確に壊れるべき場所で壊れたおかげで、車がガードレールを飛び越え、偶然にも追跡者を押し潰す――そんな瞬間だ。

私たちは、ゲームにおいて最も印象的な部分が、テクスチャの解像度や画面上のピクセルの数ではなく、水面下で行われている目に見えない数学であるという時代に突入している。『Grand Theft Auto 6』は、ゲームの次なるフロンティアが、単により良く見えることではなく、現実世界により近い挙動をすることにあると証明しようとしている。砕け散る窓の一つひとつ、へこんだフェンダーの傷跡の一つひとつが、Vice Cityの世界において「行動にはついにリアルな反応が伴う」という事実の証なのである。

James Lawson

James Lawson

Investigative science and tech reporter focusing on AI, space industry and quantum breakthroughs

University College London (UCL) • United Kingdom

Readers

Readers Questions Answered

Q 「GTA 6」で使用される手続き型物理演算と、あらかじめ用意されたアニメーション(カンド・アニメーション)にはどのような違いがありますか?
A カンド・アニメーションは、あらかじめレンダリングされたファイルやスクリプト化されたシーケンスであり、アクションがトリガーされるたびに同じように再生されます。対照的に、手続き型物理演算はRAGEエンジンを活用し、弾丸の質量、速度、素材の完全性といった特定の変数に基づいてリアルタイムで破壊を計算します。この数学的なアプローチにより、例えば弾丸が窓に当たった際、繰り返し再生される予測可能な視覚スクリプトではなく、衝撃ごとにユニークな物理的結果が生成されます。
Q RAGEエンジンはどのようにしてリアルなガラスの破損をシミュレートしていますか?
A ガラスは複雑な衝撃波を表面に伝える非晶質固体であるため、そのシミュレーションは技術的に困難です。RAGEエンジンはガラス板を動的メッシュとして扱い、表面全体の張力をミリ秒単位で計算します。衝撃が発生すると、エンジンはストレスが特定の閾値を超えているかを判断し、抵抗が最も少ない経路に沿ってメッシュを引き裂きます。これにより実際の物理的な破損を模倣し、衝突ごとに独自の粉砕パターンが生み出されます。
Q コンソールでリアルタイム物理演算を実装する際の主なハードウェア上の課題は何ですか?
A リアルタイムシミュレーションはCPUに大きな負荷をかけます。CPUは数千もの相互作用するオブジェクトに対して同時に複雑な方程式を解かなければなりません。PlayStation 5やXbox Series Xは高速ストレージを備えていますが、高密度な物理演算においては処理能力がボトルネックとなります。複雑なシーンで安定したフレームレートを維持するために、開発者は通常、非同期コンピューティング技術を使用します。これにより、物理演算とグラフィックレンダリングを並行して処理し、ハードウェアの効率を最大化しています。
Q 「GTA 6」における車両のダメージ表現は、これまでのゲーム世代と何が異なりますか?
A 以前のゲームでは、衝突時に綺麗な車モデルをへこんだモデルに置き換えるというバイナリ(二元)状態に頼ることが一般的でした。GTA 6では、車両のボディを衝突の正確な力と方向に基づいてリアルに押しつぶされる素材の集合体として扱います。あらかじめ設定されたダメージゾーンを使用するのではなく、エンジンがエネルギーがシャシーをどのように伝達するかを計算することで、高速事故の特定の状況を反映したきめ細やかな変形を実現しています。

Have a question about this article?

Questions are reviewed before publishing. We'll answer the best ones!

Comments

No comments yet. Be the first!