在 macOS 上畅玩 CS2¶
请勿过度玩梗!
此文章所介绍的梗或由此衍生出的梗,可能有被滥用的风险。 不分场合随意使用此梗可能会引来诸多人的厌恶。
序言¶
提起用 Mac 打游戏,大家肯定会想起这样一张meme图:
不过梗终究还是梗,我们不妨实操一下看看 Mac 是不是真的不能打游戏。
以我投入时间较多的 Counter-Strike 21为例,这款游戏由于基于 DX12 开发,显然未像 CS:GO 一样对 Mac 和 Linux进行适配,从开发乃至内测阶段就与 Mac 无缘了。
那么为何我还是能在 Mac 上和室友一起下厨呢?答案在下文:
0. 确认环境¶
-
确保使用的是 arm Mac,也就是搭载M系列SoC的 Mac,比如我这台 MacBook Pro 14"。
-
确保已更新到 macOS Sonoma 14.0 或更新。2
1. 使用 CrossOver 运行 Windows 应用程序¶
官网下载 CrossOver,推荐使用正版。这里我所使用的版本为23.7。
2. 安装 Steam & 游戏本体¶
- 点击 "安装" \(\to\) "Steam" \(\to\) "安装"
-
容器选择 "Windows 10" 及更高,这里以 "Windows 10" 为例。
-
等待安装完字体、创建完容器后,以正常方式运行登录 Steam 并下载游戏。
-
下完后关闭 Steam,来到容器界面,可以看到有五个选项:
选项 | 介绍 |
---|---|
D3DMetal | Game Porting Toolkit 中的图形API翻译层,支持 DirectX 11/12 游戏。 启用后,使用D3DMetal代替DXVK或wined3d默认值 |
DXVK | 基于Vulkan的翻译层,支持 DirectX 10/11 游戏。启用后,使用DXVK代替wined3d默认值 |
ESync | 基于 Eventfd 的同步,可提高帧率 |
MSync | 基于 Memory 的同步,可提高帧率 |
高分辨率模式 | 启用 HiDPI 来运行游戏,无需开启 |
- 现在可以成功运行 CS2 了!
提示
在游戏启动选项中添加"-nojoy"以提高帧率。
但运行一段时间后会发现:帧率还是太低了,强如 M1 Max 也只能跑60~70帧左右。那么有没有办法进一步提高帧率呢?
3. 运行 CXPatcher 对 CrossOver 进行优化¶
警告
接下来的内容涉及修改软件本体,不属于官方支持和服务范围内!
-
需要到 https://github.com/italomandara/CXPatcher 下载 CXPatcher,这里我使用的是V0.4.10,对应CrossOver 23.7 & 23.7.1。
-
在输入"我不会向 CodeWeavers 请求支持或退款" 后,安装GStreamer。
-
在高级选项中禁用"使用独立的容器路径",并将 CrossOver.app 拖入框中完成打补丁。
-
完成!至此,可以在 Mac 上高帧率畅玩 CS2 了。
后记¶
- CXPatcher 似乎只适用于 CS2,其他游戏如 Cyberpunk 2077 和 幻兽帕鲁 等游戏还未验证,需使用 D3DMetal 转译。
-
Counter-Strike 2 是一款由 Valve 开发的多人在线第一人称射击游戏。这款游戏延续了 CS:GO 的核心玩法,并结合了新的技术和功能。https://www.counter-strike.net/cs2 ↩
-
需更新至 macOS Sonoma 以使用 Game Porting Toolkit,从而转译 DX12 的游戏。https://developer.apple.com/download/all/ ↩