PlayStation 3 のエミュレーションが非常に難しく、再コンパイルが解決策である理由

PS3PS3

PS3 - Habanero Pixel/shutterstock.com

2006 年末に発売された PlayStation 3 は、今日ビデオ ゲームの歴史の中でアーキビストにとって最大のパズルの 1 つを表す遺産を残しました。 Cell Broadband Engine として知られるこのコンソールの心臓部は、ゲームを超えた大きな野心を持って設計されており、ハイテク サーバーやテレビにも搭載されることを目指しています。皮肉なことに、この同じ前衛的な建築が、今日その世代の古典にアクセスする上で、ほとんど乗り越えられない障壁を生み出しました。このデバイスが店頭に並んでからほぼ 20 年が経ち、開発者やスタジオは、その特定のマシンからソフトウェアを切り離す実行可能な代替手段を探しており、直接シミュレーションの試みを放棄し、より洗練されたコード書き換え技術を採用しています。

ソニー、東芝、IBM の 10 億ドル規模の提携の結果、このチップは当時の家庭用コンピューターを凌ぐほどの処理能力を実現しました。ただし、この能力の代償は、データ フローを手動かつ徹底的に管理しなければならないプログラマーにとって、非常に風変わりで厳しい構造でした。この機能により、ゲーム作成者は、約束されたパフォーマンスを引き出すために、コードをビデオ ゲーム シリコンと密接に絡み合わせる必要がありました。その結果、これらの作品を PlayStation 5 や非常に高性能のコンピュータなどの現在のマシンで実行することは、ソフトウェア エンジニアリングにとってまさに物流上の悪夢となっています。

中心的な障害は、コンソールを模倣するための総当たりの要件だけでなく、チップの異なるコア間でミリ単位の通信を複製する絶対的な必要性にもあります。以前のプラットフォームは直線的で予測可能な設計を採用していましたが、ソニーのハードウェアは非対称で時間依存性の高い方法で動作しました。これらの命令を最新のシステムに変換する際に同期に失敗すると、即時のクラッシュや重大な実行エラーが発生し、ユーザー エクスペリエンスが損なわれます。

Cell プロセッサ コアの技術的な迷宮

問題の規模を理解するには、システムの構造を観察する必要があります。システムの構造は、現在 AMD および Intel プロセッサで主流となっている x86 アーキテクチャとは完全に異なります。このデバイスの頭脳は、パワー プロセッサ エレメント (PPE) と呼ばれるメイン コアと、シナジスティック プロセッシング エレメント (SPE) と呼ばれる 8 つの補助ユニットに分割されていました。中央コンポーネントは厳密なコンダクターとして機能し、最も重い数学的ワークロードをシームレスな方法でサテライト コプロセッサに分散しました。

コンソールの真のグラフィックおよび物理的可能性を引き出すには、開発チームがこれらの補助ユニット用に特定のユニークなルーチンを作成する必要がありました。複雑な人工知能の計算、流体シミュレーション、素粒子物理学、空間音声処理は常にセカンダリ コアに転用されていました。実際には、システムをエミュレートしようとする現代のコンピュータは、ミリ秒の何分の一かの通信遅延を考慮して、完全に調和して動作する 9 つの異なるプロセッサであるかのように振る舞う必要があります。

シミュレーション中にコンダクターと衛星の間の応答時間が失敗すると、プレイヤーはキャラクターの動作が不安定になったり、テクスチャが破損したり、画面が完全にフリーズしたりする問題に直面します。この完全な同期への極端な依存により、総当たりアプローチは不合理な計算リソースを消費します。 2 世代前のタイトルを最低限の安定性で実行するには、非常に高価なプロセッサを搭載した、愛好家市場向けの最新のコンピュータが必要です。

ハードウェアそのものの人質となった独占タイトル

メーカー自身が資金提供した大規模な作品は、保存を困難にするこの建築上の罠の最も明白な例です。小島プロダクションがデザインした作品『メタルギア ソリッド 4: ガンズ オブ ザ パトリオット』は、リバース エンジニアリングの専門家によって、セル チップの決定的な囚人であるとよく指摘されています。小島秀夫のチームはコプロセッサを使用して、当時の他のプラットフォームでは不可能だった照明と物理の計算を実行し、ゲームのアイデンティティとコンソールの内部を融合させました。

シューティング ゲームの Killzone や Resistance などの他の主要なフランチャイズも、補助ユニットによって提供される遅延レンダリングと後処理機能を深く掘り下げています。これらのエクスペリエンスを今日の視聴者に復活させるには、コマンドを推測する汎用の仮想マシンを作成するだけでは十分ではありません。エンジニアは元のコードを部分ごとに分解して、ソフトウェアが物理コンポーネントとどのように通信したかを理解する必要がありますが、ディストリビュータにとっては時間がかかり、経済的にリスクの高いプロセスです。

独立開発者コミュニティは、PC 上で膨大なライブラリを実行できるようになった RPCS3 プロジェクトなどのオープン ソース イニシアチブを通じて注目すべき偉業を達成しました。ただし、タイトルごとに特定のパッチと専用の設定を適用する必要があるため、この形式の制限が浮き彫りになります。純粋なシミュレーションは依然としてパフォーマンスのボトルネックと、当時のアート ディレクターやプログラマーによって設計されたオリジナルのエクスペリエンスを損なう視覚的な欠陥に直面しています。

コードの再コンパイルが従来のエミュレーションよりも優れている理由

ハードウェア シミュレーションによって課せられるガラスの天井に直面した業界は、ネイティブの再コンパイルが数百万ドルのカタログを保存するための決定的な逃げ道であることに気づきました。外国語をリアルタイムで通訳しようとする同時翻訳者として機能するエミュレータとは異なり、この新しい技術は元のテキストを現代のプロセッサの言語に直接書き換えます。このパラダイムシフトは、古い保存方法では達成できなかった技術的な利点をもたらします。

  • コマンドをリアルタイムで変換することによって生じるプロセッサへの余分な負荷を完全に排除します。
  • フレーム レートを犠牲にすることなく、4K などの非常に高い解像度でグラフィックスをレンダリングする機能。
  • 最新の SSD ドライブの速度を最大限に活用し、画面の読み込みをわずか数秒に短縮します。
  • ソフトウェアでシミュレートされた環境に固有の視覚的な不具合や音声の問題を永続的に修正します。

業界の舞台裏での最近の動きは、コナミの想定されるマスターコレクション Vol. 1 のような待望のコレクションを示しています。 2 は、メタルギア サーガの第 4 章を救うために、まさにこの戦略を採用する必要があります。オリジナルの命令を現在のビデオ ゲームの言語に直接変換することにより、タイトルは最新のアプリケーションのように動作し始めます。これにより、プレーヤーが過去の技術的なボトルネックにさらされることなく、オリジナルの芸術的ビジョンが確実に保持されます。

ゲーム業界の記憶の保存への影響

PlayStation 4、PlayStation 5、および Xbox シリーズの製品ラインで全会一致で採用された x86 アーキテクチャを中心とした市場の標準化により、最近の世代間の互換性が大幅に促進されました。しかし、第 7 世代のゲーム機が残した技術的な深淵は、デジタル メディアの脆弱性に対する永続的な警告として機能します。オリジナルのハードウェアが故障した後もソフトウェアを確実に存続させることは、世界中の博物館や技術史家にとって緊急の課題となっています。

エミュレータは、古いマシンが舞台裏でどのように動作していたのかを明らかにする歴史的文書ツールとしての貴重な価値を保持していますが、ネイティブ変換によりエンド消費者は引き続きプレイできることが保証されます。これらの共同ソフトウェア エンジニアリングの取り組みがなければ、最後のオリジナル ゲーム機が電子コンポーネントの自然な磨耗により動作しなくなった時点で、10 年にわたる創造的なイノベーションへのアクセスを失うという現実的なリスクにさらされます。

携帯技術への巨額投資は、ノスタルジーを求める新しい顧客層に古い製品を再販するという単なる商業戦略を超えています。これは、将来の世代のために生きたアクセス可能な文化アーカイブを維持するための基本的な必要性です。単一プロセッサの複雑さによって傑作が忘れ去られるのを防ぐことは、ビデオ ゲームを永続的な芸術形式として成熟させるための重要なステップです。

こちらも参照