對許多 Linux 玩家來說,「好用」從來都不是一個簡單的詞。Valve 在 2018 年推出 Proton,讓 Steam 平台上的 Windows 遊戲得以在 Linux 環境下運行,這被視為一個里程碑。然而即便如此,在真實遊戲體驗中,Linux 與 Windows 之間的差距始終未能完全解決:如幀率數字或許相近,但那種若有似無的卡頓感、細微的畫面撕裂、不穩定的幀時序(frame pacing),卻成為資深玩家心中揮之不去的陰影。Valve 與 CodeWeavers 近日悄然釋出 Proton 11.0 Beta 1:一個改寫 Linux 遊戲底層架構的重大更新。這次升級的核心,是將整個 Proton 堆疊重新建立在 Wine 11 基礎之上,並帶入了多年來社群引頸期盼的 NTSync 技術,讓 Linux 的遊戲體驗首次真正逼近 Windows 的水準。

什麼是 Proton?為什麼這次升級如此重要?
Proton 是 Valve 為 Steam Deck 與 Linux 平台打造的 Windows 遊戲相容層,核心建構在開源的 Wine 專案之上。Wine(Wine Is Not an Emulator)並不是模擬器,而是一個翻譯層,將 Windows 的 API 呼叫轉換為 Linux 能夠理解的語言,讓原生 Windows 遊戲無需修改即可在 Linux 環境執行。
Proton 在 Wine 基礎上進一步加入 DXVK(DirectX 轉 Vulkan 的翻譯層)、VKD3D-Proton(DirectX 12 轉 Vulkan)等元件,並針對遊戲相容性做大量客製化優化。每一代 Wine 的進步,幾乎都會直接惠及 Proton 與 SteamOS 的所有使用者。而 Wine 11,是近年來最具份量的一次升級。
NTSync:解決多執行緒卡頓的根本問題
要理解這次升級的意義,必須先理解一個長年困擾 Linux 遊戲的問題:Windows NT 同步原語(NT synchronization primitives)。
現代遊戲幾乎全面依賴多執行緒架構——渲染、物理運算、音效處理、AI 邏輯分別跑在不同的 CPU 執行緒上,這些執行緒之間需要頻繁的同步協調,例如等待貼圖載入完成後才能渲染下一幀。Windows 透過內建於核心的 NT 同步機制(mutex、semaphore、event 等)來處理這些協調任務。
Wine 在 Linux 上歷來只能透過「模擬」方式處理這些機制:每次需要同步時,都要向一個名為 wineserver 的專屬行程發送 RPC 呼叫,再等待回應。在一個每秒可能發出數千次這類呼叫的現代遊戲中,這個額外開銷相當可觀,直接造成幀時序不穩定、微小卡頓,以及即便 FPS 數字看起來不差、實際體感卻總是「差那麼一點」的問題。
此前,社群曾開發出 esync 與 fsync 等變通方案,透過 Linux 的 eventfd 與 futex 機制來降低 wineserver 的呼叫頻率,改善了部分情況。然而這些方案都是在用戶空間打補丁,本質上仍是繞路,並非根治。
NTSync(NT Synchronization)則是真正的解法。它是一個 Linux 核心模組,直接在核心層面模擬 Windows NT 的同步行為,完全繞過 wineserver 的往返延遲。Wine 11 正式加入對 NTSync 的支援,要求 Linux 6.14 或更新版本的核心,且使用者需手動載入 ntsync 模組(執行 sudo modprobe ntsync)。
Wine 11 的其他重大改進
除了 NTSync,Wine 11 在多個面向帶來了架構性的升級:
WoW64 模式全面成熟:Wine 11 的 WoW64 模式(可讓 32 位元 Windows 應用程式在 64 位元系統上執行,而無需額外安裝 32 位元函式庫)已達到完整功能,甚至能支援 16 位元應用程式。有趣的是,這意味著 Wine 在 16 位元應用支援上,難度已與 Windows 本身相當,因為現代 Windows 也無法原生執行 16 位元程式。這對保存舊遊戲而言是一大福音。
Wayland 驅動大幅完善:Wine 11 的 Wayland 驅動新增了雙向剪貼簿支援、從 Wayland 應用程式拖放至 Wine 應用程式的功能,以及模擬螢幕解析度切換(透過合成器縮放實現),讓許多嘗試切換至較低解析度的舊遊戲能正確運作。
GPU 渲染改進:EGL 後端成為 X11 上的預設 OpenGL 渲染方式,取代舊有的 GLX 後端;新增 Vulkan 1.4 API 支援;透過 Vulkan Video 硬體解碼 H.264 的功能也已上線,讓遊戲過場動畫與串流應用得以使用 GPU 解碼而非佔用 CPU。
執行緒優先權調整:Wine 11 對 Linux 與 macOS 上的執行緒優先權機制做了調整,有助於讓多執行緒遊戲更流暢地運行(這與 NTSync 是獨立的改進,但彼此相輔相成)。
Proton 11.0 Beta 1:元件全面升級
Proton 11.0 Beta 1 在 Wine 11 基礎上,進一步整合了多個核心元件的最新版本。根據 Phoronix 的報導,本次更新包含:
- DXVK 2.7.1-git(DirectX 9/10/11 → Vulkan 翻譯層)
- VKD3D-Proton 最新版(DirectX 12 → Vulkan 翻譯層)
- VKD3D 1.19-git
- DXVK-NVAPI 0.9.1
- Wine Mono 11.0
- FEX 2604(用於 ARM64EC 架構,預示 Steam Frame 掌機的技術準備)
其中值得注意的是 ARM64 版 Proton 的釋出,搭配 FEX 轉譯層,意味著 Valve 正積極為其傳聞中的 ARM 架構 Steam Frame 掌機進行底層鋪墊。
相容性大躍進:更多遊戲直接可玩
Proton 11.0 Beta 1 帶來了一長串的遊戲相容性改進。根據官方 GitHub 釋出說明,以下遊戲從「僅能在 Proton Experimental 運行」晉升為「主線支援」:
Universe Generator: The Golden Sword、DCS World Steam Edition、Resident Evil(1996)、Resident Evil 2(1998)、Dino Crisis、Dino Crisis 2、From Dust、METAL GEAR SURVIVE、Warhammer: Vermintide 2、SHOGUN: Total War(以及其他數款)
此外,以下遊戲首次在 Proton / Steam Play 環境下變得可玩:Unknown Faces、Gothic 1 Classic、X-Plane 12、Breath of Fire IV、Deadly Premonition。
啟動器相容性方面,EA Desktop、Rockstar Launcher 與 REDLauncher(用於《電馭叛客 2077》、《巫師 3》等)的多個已知問題都獲得修正。其中,許多 EA 遊戲因近期 EA Desktop 更新而無法遊玩的問題,也已在此版本中解決。
VR 支援同樣有所強化:修正了《微軟模擬飛行》的 VR 控制器追蹤問題,《No Man’s Sky》的 VR 模式也得以重新正常運作。
這次 Proton 11.0 Beta 的釋出,發生在 Linux 遊戲生態系快速發展的關鍵節點。Wine 11 的改進將同時惠及 Proton 與 SteamOS,讓 Valve 的 Steam Deck 與所有採用 SteamOS 的裝置受益。Steam 平台的統計數據也反映出這股趨勢:Linux 的遊戲使用率正持續成長,而 Proton 持續降低 Windows 遊戲移植至 Linux 的門檻,已讓超過數萬款 Steam 遊戲在 Linux 上可玩。
如何使用 Proton 11.0 Beta?
想要體驗 Proton 11.0 Beta 1 的使用者,可透過 Steam 的「Steam Play」設定中手動選擇 Beta 版本來啟用。若要發揮 NTSync 的完整效益,需確認系統核心版本為 Linux 6.14 或以上,並手動載入 ntsync 模組。部分 Linux 發行版(如 CachyOS)已預設啟用相關優化,但多數主流發行版仍需手動設定。
Valve 目前尚未公布 Proton 11.0 正式版的預計發布時間。

