Mac 电脑安装 Game Porting Toolkit 详细安装指南
在配备 Apple M 芯片的 Mac 电脑上,通过苹果在 WWDC 2023 上推出的 Game Porting Toolkit 套件,运行包括 Steam 、战网登游戏客户端的详细方法。
Game Porting Toolkit 简介
Game Porting Toolkit ( GPTK ) 是 Apple 专门推出的一套强大工具集,旨在协助开发人员轻松地将 Windows 游戏移植到 Apple Silicon Mac 平台上。该工具包不仅提供了命令行工具,还具有直观的图形用户界面,大大简化了兼容性问题的解决和游戏性能的优化工作。
GPTK 包含了以下工具和资源:
- 一个游戏兼容性数据库,列出了在 Apple Silicon 上运行的游戏
- 一个游戏配置工具,可帮助开发者调整游戏的设置以提高性能和兼容性
- 一个游戏调试工具,可帮助开发者诊断和解决游戏在 Apple Silicon 上的兼容性问题
对于希望更深入了解和探讨 GPTK 的开发者,可以访问 GPTK 官方论坛: https://developer.apple.com/forums/tags/game-porting-toolkit
🔗 GPTK 支持游戏兼容性列表: https://ivensliaoblog.com/productivity-tools/mac-gptk-game-compatibility-list/
Game Porting Toolkit 安装要求
硬件要求
必须使用配备苹果芯片的 Mac 电脑,包括 M1 、 M2 系列的芯片。
英特尔芯片的 Mac 无法运行。
系统要求
建议使用最新的 macOS Sonoma 系统(目前处于 Beta 阶段),旧版本的系统会出现很多运行错误、崩溃的问题,不建议大家花费时间去尝试。
从 macOS Sonoma 开始,苹果开放了 Beta 系统的下载权限,现在无需成为付费开发者也可以很方便的下载到 Beta 版系统,详细可以参考 macOS Sonoma Beta 下載安裝教學。
软件要求
Game Porting Toolkit 安装需要依赖于以下软件:
- Xcode 15 Beta
- Game Porting Toolkit 资源包
- Homebrew
以上软件,我们将在下一部分引导大家一步一步进行安装。
Game Porting Toolkit 安装步骤
如果你觉得自己安装太麻烦或遇到问题,想要找人远程协助安装,并愿意为此付一点小费的话,不妨试试: https://item.taobao.com/item.htm?abbucket=18&id=761182042347
以下所用工具,都可以在苹果开发者平台下载到。
如果你不想注册登录,我也提供一个百度网盘链接,包含所有的工具:百度网盘 (提取码: tmim )
在以下工具安装过程中,如果你出现网络错误,或提示 SSL 相关错误,请尝试:
- 启用代理软件,并在终端中设置代理( ClashX 请使用「复制终端代理命令」)
- 将代理软件设置为全局模式
- 更换代理节点再尝试。(我使用新加坡和日本失败,使用美国成功。)
Xcode 15 Beta 安装
要运行 GPTK ,需要依赖于 Xcode 。因此,我们需要安装 Xcode 15 主体和 Xcode 15 Command Line 。
下载地址: https://developer.apple.com/download/all/?q=xcode%2015%20beta
下载如上图标注的这两个文件。.dmg
可以双击安装,.xip
需要解压之后安装。
注意:如果你安装了老版本的 Xcode ,需要先卸载老版本再安装新版本。
Homebrew 安装
Homebrew 是一款专为 Mac 电脑设计的软件管理工具,你可以理解为命令行里的应用商店,但其中上架的主要是无 UI 界面的命令行软件。
如果你之前已经安装了 ARM64 版本的 Homebrew ,可能会导致后续构建过程出错,建议先删除 ARM64 Homebrew ,安装 x86 版本的 Homebrew 。
删除命令如下:
NONINTERACTIVE=1 /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/uninstall.sh)"
安装 x86 版本的 Homebrew 方法如下。
先安装 Rosetta ,并在 Rosetta 环境中模拟运行 x86_64 版本的终端:
softwareupdate --install-rosetta
arch -x86_64 zsh
然后在这个终端中,使用 Homebrew 官方脚本进行安装。因为我们的终端环境时 x86_64 ,所以会自动安装 x86_64 版本的 Homebrew :
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
安装完成后,设置环境变量:
(echo; echo 'eval "$(/usr/local/bin/brew shellenv)"') >> /Users/$USER/.zprofile
eval "$(/usr/local/bin/brew shellenv)"
若输出如下图所示,表示安装成功:
Game Porting Toolkit 安装
我们需要先下载 Game Porting Toolkit 资源包,以便在后续构建过程中使用它们,步骤如下。
下载地址: https://developer.apple.com/download/all/?q=game%20porting%20toolkit
下载之后,在访达中双击打开它,这会将.dmg 文件挂载到 Mac 上,无需进行其他操作:
然后回到终端(必须使用上一步中创建的 x86_64 的终端),运行以下命令来安装 Apple Tap ,这将很快完成:
brew tap apple/apple http://github.com/apple/homebrew-apple
下载 Game Porting Toolkit 资源包,这部分下载数据量非常大,可能需要较长时间:
取决于你的网络速度,下载时间会有一些区别。
作为参考,我家的网络下载了大约 80 分钟,建议可以去做点其他事情。
brew -v install apple/apple/game-porting-toolkit
输入如下图所示,表示下载安装成功:
获取 Apple GPTK 更新,命令如下:
brew update && brew upgrade apple/apple/game-porting-toolkit
将我们之前下载的 Game Porting Toolkit 资源库复制到 Wine 的库目录中(确保你已经挂载):
ditto /Volumes/Game Porting Toolkit-1.0/lib/ `brew --prefix game-porting-toolkit`/lib/
将 Game Porting Toolkit DMG 中的下面 3 个脚本放入此处 /usr/local/bin
:
cp /Volumes/Game Porting Toolkit*/gameportingtoolkit* /usr/local/bin
如果你坚持到了这里,那么恭喜你,我们已经完成 Game Porting Toolkit 的安装工作。
如果你在安装过程中遇到错误,欢迎在评论区留言告诉我。
游戏安装
安装 Steam
创建一个新的 Wineprefix (首次启动,需要等待 10-20 秒时间):
Wineprefix 是与 Wine 兼容层相关的目录,允许在类 Unix 系统上为不同的 Windows 应用程序创建隔离的运行环境。这有助于解决不同应用程序间的兼容性问题,使它们可以在各自的优化环境中运行。
WINEPREFIX=~/steam-game-prefix `brew --prefix game-porting-toolkit`/bin/wine64 winecfg
- 将 Windows 版本修改为 Windows 10
- 选择“应用”,然后选择“确定”退出
然后,下载 Windows 版本的 Steam ,并将其放入你的“下载”文件夹中。
官网最新版( 8 月 5 日的版本)的 Steam 无法启动,请下载 7 月之前的旧版本。
使用以下命令安装 Steam :
gameportingtoolkit ~/steam-game-prefix ~/Downloads/SteamSetup.exe
这将打开 Steam 安装创建,你需要按照 Windows 的安装流程完成安装即可:
安装完成之后,使用以下命令启动 Steam :
gameportingtoolkit ~/steam-game-prefix 'C:Program Files (x86)/Steam/steam.exe'
如果你在 Dock 栏中看到 Steam 图标,但是没有 Steam 窗口,请关闭之后重启试试。可以多试几次,我是第三次打开才正常显示。
如果你仍然无法打开,可以做以下尝试:
- 断开外接显示器,使用 Mac 自带的显示器。
安装战网
方法和 Steam 类似。
首先下载 Windows 版本的战网客户端,然后将安装包保存到访达的下载目录。
下载地址: https://download.battle.net/en-gb/?platform=windows (需要先登录才能下载)
创建一个新的 Wineprefix:
Wineprefix 是与 Wine 兼容层相关的目录,允许在类 Unix 系统上为不同的 Windows 应用程序创建隔离的运行环境。这有助于解决不同应用程序间的兼容性问题,使它们可以在各自的优化环境中运行。
WINEPREFIX=~/battlenet-game-prefix `brew --prefix game-porting-toolkit`/bin/wine64 winecfg
- 将 Windows 版本修改为 Windows 10
- 选择“应用”,然后选择“确定”退出
运行战网启动器:
gameportingtoolkit ~/battlenet-game-prefix ~/Downloads/Battle.net-Setup.exe
然后你可以按照引导完成安装。
目前战网客户端在关闭之后,无法重新启动,除非重新运行上述命令重新安装客户端。
你也可以在无需启动战网客户端的情况下,直接启动游戏,命令如下:
arch -x86_64 gameportingtoolkit-no-hud ~/my-game-prefix 'C:Program Files (x86)Diablo IVDiablo IV Launcher.exe'
安装单个 exe 游戏
我们仍然先创建一个新的 Wineprefix ,例如名为 myinstall-game-prefix :
WINEPREFIX=~/myinstall-game-prefix `brew --prefix game-porting-toolkit`/bin/wine64 winecfg
打开自己的家目录,可以看到熟悉的 Windows 文件管理路径:
家目录进入方法:打开访达 -> 前往 -> 前往文件夹,输入~符号回车即可。
将你的 exe 游戏文件拷贝到文件夹中,然后使用如下命令启动对应.exe 文件:
gameportingtoolkit ~/myinstall-game-prefix 'C:Program Files (x86)<你的文件路径>.exe'
例如,我拷贝了【勇者斗恶龙】这款游戏到 Program Files ( x86)文件夹中:
我可以使用如下命令来启动:
gameportingtoolkit ~/myinstall-game-prefix 'C:Program Files (x86)DRAGON QUEST XI启动游戏.exe'
其他应用的启动方式类似,此处不再赘述。
故障排除
应用关闭或崩溃后,使用命令再次启动没有反应?
打开 macOS 的「进程管理器」,在右上角搜索 Wine ,然后选中所有进程,点击 x 退出:
或者使用以下命令(是一样的效果):
killall -9 wineserver && killall -9 wine64-preloader
然后再尝试启动命令试试。