22年前の名作RTS『Command & Conquer: Generals』がApple Siliconでネイティブ動作——コード翻訳AI「Fable」が切り拓く、壁を越えるゲーム移植の新時代

22年前の名作RTS『Command & Conquer: Generals』がApple Siliconでネイティブ動作——コード翻訳AI「Fable」が切り拓く、壁を越えるゲーム移植の新時代

FableゲームMac移植ClaudeApple Siliconコマンド&コンカー

データソース:HN + web research · HN

22年前の名作RTSがApple Siliconでネイティブ動作

7月4日、「Generals-Mac-iOS-iPad」というオープンソースプロジェクトが、技術コミュニティHacker Newsのトップに躍り出て292ポイントを獲得した。プロジェクトの説明はわずか一行:2003年のクラシックRTS『Command & Conquer: Generals』が、Mac、iPhone、iPad上でネイティブ速度で動作する。 仮想マシンもエミュレータも不要だ。

筆者はこのニュースを最初に目にしたとき、こう思った——ただの古いゲームの移植じゃないか、何を大騒ぎする話があるんだ?しかし読み進めるうちに、事態が「移植」の二文字よりはるかに複雑であることに気づかされた。このプロジェクトを背後で押し上げたのは、「Fable」と呼ばれるコード翻訳ツールだ。Windowsプログラムのコードを、Appleデバイスが実行できる命令に直接「翻訳」する——何も「模倣」しない。

この出来事の意味は、22年前の一本のゲームの復活をはるかに超えている。

C&C Generals Zero Hour のAppleデバイス上での動作スクリーンショット ▲ C&C Generals: Zero Hour が Apple Silicon Mac 上でネイティブ動作。出典:GitHub ammaarreshi/Generals-Mac-iOS-iPad

エミュレータの「原罪」——なぜ従来の手法は不十分だったのか

MacでWindowsゲームを遊んだ経験があるなら、おそらく2つの手法のどちらかを使ったはずだ。

1つ目は仮想マシン——Macのなかにもう一つWindowsシステムをインストールする方法。自宅のなかにさらにもう一軒、家を建ててその中で生活するようなものだ。この「家」自体が大量のリソース——メモリ、プロセッサ、電力——を消費し、しかもその中での生活は、決して「母屋」の快適さには及ばない。仮想マシン内でゲームを動かせば、フレームレートの低下、入力遅延、ファンの轟音は日常茶飯事だ。

2つ目はエミュレータ——ソフトウェアでWindowsマシンを「装う」方法。Windowsの命令を一つひとつ「装って実行」する。これは英語のメニューを前に、一文字ずつ辞書を引いているようなもので、遅く、間違いやすい。エミュレータのパフォーマンス損失は通常30%から80%に達し、大型ゲームではほぼ許容不可能だ。

Appleは2020年から、MacのチップをIntel製から自社設計のMシリーズチップ(いわゆる「Apple Silicon」)に切り替えた。この移行は巨大なパフォーマンス向上をもたらしたが、同時に一つの副作用を生んだ。WindowsとMacの間の「言語」が、根本的に異なるものになったのだ。 以前は少なくとも同じチップアーキテクチャだったが、今や最底層の動作原理すらまったく別物である。

これはつまり、Apple Silicon MacでWindowsゲームを動かす難易度が、以前よりさらに上がったことを意味する。

Fableはエミュレータではない——「翻訳官」だ

Fableがこの問題を解く方法は、エミュレータとは本質的に異なる。

エミュレータは「装う」。Windowsのハードウェア環境をソフトウェアで絶え間なく模倣し、ゲームが一歩進むたびに一歩模倣する。この模倣プロセスそのものが巨大なパフォーマンスコストだ。

Fableのやり方は「翻訳」だ。ゲームのオリジナルコードを直接読み取り、Apple Siliconが理解できる形式に書き換える。翻訳が完了した生成物は、正真正銘の、ネイティブなAppleアプリケーションである——何かを「装う」中間層は一切必要ない。

たとえて言うなら:エミュレータは同時通訳者を雇うようなものだ。一言話すたびに通訳が入り、遅く、間違いも起こりやすい。Fableは本をまるごと事前に翻訳して印刷してしまうようなものだ。読者が手にするのは母国語の本であり、読む速度はオリジナルと完全に同じである。

この違いは、パフォーマンスに直接反映される。Apple Mシリーズチップ搭載のMac上で、Fableを通じて移植された『Command & Conquer: Generals』の動作のスムーズさは「ネイティブアプリに匹敵する」——これはプロジェクト作者自身の言葉だ。筆者は実機検証していないが、Hacker News上の複数の開発者からのフィードバックによれば、M1 MacBook Airのようなエントリーレベルのデバイスでも安定したフレームレートを維持し、ファンすら高速回転する必要がないという。

さらに驚かされるのはグラフィックスレンダリングパイプラインだ。この2003年のゲームは、MicrosoftのWindows向けプロプライエタリなグラフィックス技術を使用しており、Appleデバイスはこれをまったくサポートしていない。ゲーム画面をAppleデバイス上に表示するために、移植者は「翻訳チェーン」を架け渡した——ゲームのグラフィックス命令を、層を重ねた変換を経て、最終的にAppleが理解できるグラフィックス言語に変えるのだ。

たとえるなら:ある人が外国人とコミュニケーションを取りたいが、直接共通の言語がない。そこで最初の人に中国語で話し、一人目が英語に訳して二人目に伝え、二人目がフランス語に訳して三人目に伝え、三人目がアラビア語に訳して最終的な相手に伝える。翻訳の層が一つ増えるごとに、間違いの可能性も一つ増える——だがこのプロジェクトでは、すべての「翻訳」は事前にコンパイルされたプログラムであり、ゲーム実行時の追加負荷はほぼゼロだ。

HN上である開発者が「これがまともに動くことに驚いている」とコメントしたのに対し、別の開発者は鋭く返した:「これらの低レベルライブラリはすでに十分成熟して安定している。驚くべきことじゃない——そもそもこういうシナリオのために設計されたものだ。」

Appleの「壁に囲まれた庭」と、壁を越える者たち

ここで避けて通れない話題がある。Appleの閉鎖的エコシステムだ。

AppleはこれまでMac上でWindowsのグラフィックスインターフェース(DirectX)をサポートしたこともなければ、オープンソースのクロスプラットフォームグラフィックス標準であるVulkanのサポートも拒否してきた。つまり、WindowsゲームをMacに持っていこうとする者は誰であれ、自分で「橋」を架けなければならない——このプロジェクトの5層翻訳チェーンのように。

Appleがこうする理屈は難しくない。Mac独自の技術でゲームを開発させ、そうすればゲームはAppleデバイスでしか動かず、「堀(モート)」が形成される。ビジネスの観点からは、非難できることではない。しかしプレイヤーと開発者にとって、この壁は大量のクラシックゲームをAppleエコシステムの外に閉め出すことを意味する。

Fableのようなツールの出現は、本質的に「壁を越える」行為だ——技術的手段でプラットフォーム間の障壁を迂回する。それが示しているのはこうだ。Appleの許可も必要なければ、ゲームメーカーの公式移植を待つ必要もない。一人の開発者と一つのAIコード翻訳ツールがあれば、22年前のWindowsゲームを今日のAppleネイティブアプリに変えられる。

この「壁越え」行為は、興味深い議論を呼び起こした。コード翻訳が十分に簡単で信頼できるものになったとき、プラットフォーム間の壁はまだ存在するのか?

Hacker News上である開発者が、筆者の印象に深く残る言葉を残している:「僕は最近、GTA VIがプラットフォームにロックされていて、好きな本を知人に回すみたいに友人に渡せないと愚痴っていた。でもたぶん、インストールパッケージ全体をアーカイブしておけば、そう遠くない未来のAIがごく低コストでそれをあらゆるプラットフォームに『復活』させてくれるんだろう。」

別の開発者はさらに直接的に応答した。「DRM(デジタル著作権保護)が邪魔をしないと仮定すれば、GTA6が『移植が必要になるほど古く』なった頃には、こうした移植はHNで記事になる価値すらないほど普遍化している方に賭ける。」

この出来事の弦外の音

冷静に言えば、このプロジェクトはFable単独の偉業ではない。HN上の複数の開発者の分析によれば、Fable(Anthropic社のClaude Fableモデルであり、Claude Codeツール経由で使用される)が実際に貢献したのは約19回のコードコミットに過ぎず、プロジェクト全体では2000回以上のコミットがある。真の主力はGeneralsXプロジェクトだ——EA社がGPL v3ライセンスでオープンソース化した『Command & Conquer: Generals』のオリジナルコードをベースに、開発者コミュニティがWindowsからMacおよびLinuxへの低レベル移植作業を完了した。Fableが行ったのは、その土台の上にiPhoneとiPadのタッチスクリーン対応を加えることだった。

HNユーザーの中には、これを「ややタイトル詐欺気味だ」と指摘する声もある——功績をすべてFableに帰し、先行者の多大な作業を無視している、と。この批判は公正だ。

しかし筆者は、「Fableがどれだけやったか」に焦点を当てることこそ、本質を見失わせると思う。本当に注目すべきシグナルはこうだ。AI支援によるクロスプラットフォームコード翻訳が、実験室のコンセプトから実際に使えるツールへと変わりつつある。 今日それが2003年の古いゲームをiPadに移植するのを手伝ったのなら、明日は10年前に買ったWindowsのプロダクティビティソフトをMacに移植できるだろうか?明後日には、OSの一部となって、すべてのプログラムが生まれつきクロスプラットフォームになるだろうか?

この方向性がひとたび進み始めれば、変わるのはゲーム業界だけではない。オフィスソフト、デザインツール、プロフェッショナルソフト——ソフトウェアエコシステム全体のクロスプラットフォームの論理が、書き換えられる可能性がある。

もちろん、まだ歓喜するには早すぎる。Fableの現在の実力、再現性、そして複雑な商用ソフトウェアを処理する際の信頼性は、いずれも検証の途上にある。しかしHN上で集まった292ポイントの背後には、一つの開きつつあるドアを目撃した技術者たちの視線がある。


参考リンク:

画像説明:本稿のソース資料(GitHubプロジェクトREADMEとHN議論ページ)には、コンテンツ用の画像が1点のみ含まれている(上記のゲーム動作スクリーンショット)。ページ内のその他のimg URLはすべてGitHubのアイコン/ロゴ等の装飾要素(favicon、fluidicon)であり、利用可能なコンテンツ画像は他に存在しない。