
SwitchのゲームコードをApple端末で実行
オープンソースの「nxnative」は、利用者が所有するNintendo Switchのゲームを、iPhoneやiPadで動くアプリに変換します。ゲームのコードをエミュレーター上で動かすのではなく、Apple製チップで直接実行する仕組みです。Mac向けアプリも作成できます。
SwitchとAppleの近年の端末は、Arm系アーキテクチャを採用しています。この共通点を生かしてゲームコードを直接動かし、Switch固有のOS機能やグラフィックス処理は別の仕組みで補います。
プロジェクトの動作確認リストには、『マリオカート8 デラックス』『メトロイド ドレッド』『スーパーマリオ オデッセイ』などが含まれます。更新データのバージョンによっては、『ゼルダの伝説 ブレス オブ ザ ワイルド』や『ティアーズ オブ ザ キングダム』などを60fpsで動かせます。
OSとグラフィックスを置き換える仕組み
nxnativeは、SwitchのOS「Horizon」に代わるホストプログラムを用意し、ゲームが必要とするシステム機能を扱います。グラフィックスは任天堂独自のインターフェースからAppleのMetalへ変換します。
グラフィックス処理には、SwitchのシェーダーをSPIR-Vへ変換するRyujinx由来のコードも使われています。SPIR-Vはシェーダーを表す中間形式で、さらにMetal向けの形式へ変換されます。Arm系のチップを共有していても、OSやグラフィックス機能は共通ではありません。
2020年には、Yuzuエミュレーターを使ってM1 Mac上で『スーパーマリオ オデッセイ』を動かす例がありました。この方法ではVulkanというグラフィックスAPIをMoltenVK経由でMetalに対応させており、Metal対応が課題として挙げられていました。nxnativeはゲームコードを直接実行し、Switchのグラフィックス処理をMetal向けに組み直します。
対応端末とアプリ作成の条件
iPhoneではiPhone 15 Pro以降、iPadではM1チップ以降が対象で、iOS 26またはiPadOS 26以降が必要です。ゲームのテクスチャにはBC圧縮形式が使われており、古いiPhoneはその形式を扱えません。
アプリの作成には、利用者自身のゲームデータと本体から取り出した復号キー、Xcodeを備えたMacが必要です。ビルドスクリプトを実行してアプリを作り、AltStoreやSideloadlyなどを使ってApp Store外からインストールします。初回のビルドには30〜60分ほどかかり、ゲームのデータ量に応じた空き容量も必要です。
ゲームの更新データがある場合は、フォルダー内の最新版がアプリに反映されます。ただし、60fps動作などの調整は指定されたバージョンに依存し、別の版では適用されない場合があります。オンラインプレイとamiibo機能には対応していません。
Macでの動作例とプロジェクトの位置づけ
Mac向けアプリは、ビルド時に追加の指定をして作成できます。Mac向けゲーム動画を公開しているAndrew Tsai氏は、メモリー8GBのM1 MacBook Airで『モンスターハンターライズ』を60fpsで動作させ、『ユニコーンオーバーロード』も実行しました。
nxnativeは任天堂やゲーム出版社と関係のないプロジェクトです。ゲームデータは配布せず、利用者が用意したファイルからアプリを作ります。Nintendo Switchのエミュレーターをめぐっては、2024年に異なる経過がありました。
Yuzuの開発者は任天堂との訴訟で240万ドル(約3億8,000万円)の支払いに合意し、エミュレーターの提供を終了しました。同年、Ryujinxの開発者は任天堂から連絡を受けた後、プロジェクトの組織と関連資産を削除し、開発を停止しました。nxnativeはRyujinxのシェーダー変換コードを利用しており、そのコードはMITライセンスに基づいています。











