如果你一直在等待 macOS 上出现一个“真正意义”的 Xbox 360 模拟器,那么这个全新的开源项目 xenia-mac 是目前最直接的尝试。它并非官方 Xenia 版本,而且目前处于非常早期的阶段。发布页面明确标注其为“极早期实验性 macOS 移植”,并警告存在大量崩溃、卡死以及游戏无法启动的情况。
该项目最先被 MacObserver 发现,其最吸引人的地方在于技术路线。它没有依赖仅限 Windows 的图形 API,而是采用了 原生 Metal 后端(苹果自家的图形 API),并借助苹果官方工具链对 shader 代码进行转换,使其能在 GPU 上运行。
通过这个开源项目,你已经可以在 macOS 上运行《GTA IV》,甚至《Battlefield: Bad Company 2》——至少能玩到第一关。下面是游戏实机截图:
如何在 macOS 上运行 Xbox 360 模拟器?
Xenia 是一个开源的 Xbox 360 模拟器研究项目。而这个分支 xenia-mac 是专注于 macOS 的分支,提供了预编译的 DMG 文件,方便测试者无需自己编译源码即可直接尝试。
最新版本基于 xenia-canary(Xenia 的实验性分支)开发。
| 版本 | 发布日期 (GitHub) | 基础 | CPU 支持 | 图形后端 | 作者说明 |
|---|---|---|---|---|---|
| v0.1 | 2026年1月17日 | xenia 主分支(较旧基础) | 仅限 ARM64 | 原生 Metal | “非常 Bug 多且不稳定”,大量游戏无法启动。 |
| v0.11 (canary-rebase) | 2026年1月18日 | xenia-canary | 目前 ARM64,x86_64 计划支持但尚未包含 | Metal | 比 v0.1 能启动更多游戏,但仍然不稳定。 |
为什么 macOS 移植意义重大?
上游 Xenia 项目长期以来都是 Windows 优先,甚至 xenia-canary 的 wiki 都表示,在苹果支持 Vulkan 之前,macOS 很可能不会获得官方支持。
这个分支选择了完全不同的路径:它不等待 Vulkan 支持,而是直接开发 Metal 后端,并以 Metal 友好的方式完成 shader 转换。
xenia-mac 的工作原理与 macOS 上实现 Xbox 360 模拟的机制
在 CPU 部分,相关 Pull Request 表示项目已在 Apple Silicon 上进行测试,并基于 ARM64 后端 构建。
在 GPU 部分,同一份 PR 描述了一个多阶段的 shader 翻译管线,最终输出给 Metal。苹果官方文档确认 Metal Shader Converter 可以将 DXIL 转换为 Metal IR,既支持命令行工具,也支持libmetalirconverter库,且完全兼容 macOS。
Shader 转换路径详解
| 步骤 | 输入 | 输出 | 存在原因 |
|---|---|---|---|
| 1 | Xbox 360 shader 微码 | DXBC | 复用 Xenia 现有的翻译基础设施。 |
| 2 | DXBC | DXIL | 转换为现代 DirectX 中间格式。 |
| 3 | DXIL | Metal IR | 使用苹果 Metal Shader Converter /metalirconverter。 |
| 4 | Metal IR | MTLLibrary | 交给 Metal 让 GPU 执行。 |
一个关键细节: PR 中提到选择这条路径是因为“目前最简单”,但同时也明确指出会带来较大的性能损失。
总结一下目前实现的主要技术点:
- ARM64 后端 用于 CPU 执行(聚焦 Apple Silicon)。
- Metal 后端 用于渲染。
- 管线中使用 Apple Metal Shader Converter(DXIL → Metal IR)。
目前能运行什么?
v0.11 版本发布说明中列出了一份测试游戏列表及简短备注。下面是部分快照(非完整列表):
| 游戏 | Title ID | v0.11 中的表现 | 已知问题 |
|---|---|---|---|
| Nier | 535107E8 | 可进入游戏,“看起来可玩” | 轻微画面问题,音频“尖细” |
| Silent Hill: Downpour | 4B4E0823 | 可进入游戏 | 画面故障(包括过场动画) |
| Battlefield: Bad Company 2 | 454108A8 | 可进入第一关 | 开场后卡死,音频异常 |
| Red Dead Redemption | 5454082B | 可进入游戏 | 严重画面问题,音频异常 |
| GTA IV | 545407F2 | 可进入加载/菜单 | 菜单卡死(作者称相比 v0.1 是退步) |
| Halo 3 / Reach / ODST / 4 | 4D53… | 无法启动 | 卡死 |
v0.11 中提到的常见失败模式
- 启动即卡死(多个大作)。
- 冻结 / 黑屏,至少一个游戏明确与“Metal 后端问题”相关。
- 音频问题(无声、失真、不稳定)。
- 内存保护错误(至少一份报告提到 “mprotect failures”)。
- 渲染/解析失败(至少一份报告提到 “Metal backend resolve failures”)。
在 macOS 上安装与启动 Xbox 360 模拟器
两个版本均说明应用为 开发者签名但未经过公证,因此首次打开时 macOS 很可能会阻止。发布说明指导用户在首次尝试打开后,前往 系统设置 > 隐私与安全性 > 仍要打开 手动允许。
快速上手步骤如下表:
| 步骤 | 操作 | 目的 |
|---|---|---|
| 1 | 挂载 DMG,将 Xenia.app 拖到 应用程序 文件夹 | 标准的 macOS 安装流程。 |
| 2 | 尝试打开一次 | 触发 Gatekeeper 阻拦提示。 |
| 3 | 前往 隐私与安全性,点击 仍要打开 | 因为未公证,必须手动放行。 |
这个项目真正想解决的问题
- 让 Xenia 的渲染能在 macOS 上通过 Metal 正常工作。
- 将 Xbox 360 的 shader 翻译成 Metal 可消费的格式,利用苹果的转换管线。
- 逐步稳定整个技术栈,让更多游戏从“卡死/崩溃”进化到“能启动”再到“可玩”。
因此目前看到“进菜单但卡死”“启动但画面崩坏”“Metal 后端失败”都属于正常现象。发布说明本质上描述的是一个还在搭建正确性的移植项目,而非打磨阶段。
不是。它是 fork 项目(wmarti/xenia-mac),提供的是预发布实验版本,官方描述为实验性 macOS 移植。
最新版说明 x86_64 支持在计划中但尚未实装。目前应认为主要针对 Apple Silicon。
因为仅开发者签名、未经过公证,需按发布说明在隐私与安全性中手动允许。
发布说明与 PR 均明确是 原生 Metal 后端,加上以 Metal 为终点的 shader 转换流程。
PR 描述的管线为:Xbox 360 微码 → DXBC → DXIL → Metal IR → MTLLibrary。苹果文档确认 Metal Shader Converter 可完成 DXIL 到 Metal IR 的转换。
PR 明确警告:目前“最简单”的路径会带来较大的性能损耗。即使能启动,帧率与流畅度差异也会非常大。
目前能启动的游戏中,Nier 表现相对较好(可进入游戏且“看起来可玩”),但整体仍处于极早期阶段,多数游戏都有明显问题。
即使在 xenia-canary 的 wiki 中,也认为在苹果支持 Vulkan 之前 macOS 难以获得支持。这个 fork 实际上是在探索完全不同的 Metal 路线。

Jack
全部评论0