整個流程可以簡化為:
Game(Direct3D 12) → Proton/Wine → VKD3D‑Proton → Vulkan Driver → GPU
如果轉譯順利,效能與穩定性通常接近原生 Linux 遊戲。但當遊戲引擎的 GPU 行為不符合 Vulkan 或轉譯層的預期時,就可能產生崩潰或圖形錯誤。
目前《Forza Horizon 6》似乎正好遇到這種情況。
VKD3D‑Proton 的核心開發者 Hans‑Kristian Arntzen 在為 Proton 準備相容性修補時,形容這款遊戲在 Linux 轉譯環境中 「extremely broken」。
需要注意的是,這個評價指的是 透過 VKD3D‑Proton 轉譯時的行為,並不是說 Windows 版本本身壞掉。
部分技術分析指出,遊戲可能做出一些在 Windows 驅動上「勉強可行」但在 Vulkan 環境中問題很大的操作,例如:
這些行為在 Direct3D 12 的某些驅動實作中可能被容忍,但在 Vulkan 轉譯環境裡就容易造成崩潰或 GPU 停滯。
早期測試中,Linux 與 Steam Deck 玩家回報了多種不同類型的錯誤。
部分 NVIDIA Linux 使用者回報在特定地點會 穩定重現 GPU 當機。
例如有玩家指出,從 Miyazu Bay Kakurega 出發進入第一個路口時遊戲會直接卡死,最終出現 Vulkan device loss 錯誤。
所謂 device loss 通常代表 GPU 驅動在處理圖形指令時失去回應,導致應用程式被迫終止。
Steam 社群討論串中,許多 Linux 玩家表示遊戲會在以下情況崩潰:
這些現象通常指向渲染管線不穩定,而不是簡單的設定錯誤。
VKD3D‑Proton 的 debug log 中也出現與資源初始化相關的警告,例如圖像轉換與記憶體 barrier 的問題。
這類錯誤通常意味著遊戲的資源管理方式與 Vulkan 的預期流程不完全相容,可能導致:
Steam Deck 使用的是 SteamOS(Linux)+ Proton,因此它會遇到與桌面 Linux 相同的問題。
早期測試玩家描述的情況包括:
整體體驗目前仍相當不穩定。
Linux 玩家社群已經開始測試一些 workaround。
最常見的啟動參數是:
PROTON_VKD3D_HEAP=1 VKD3D_CONFIG=enable_experimental_features,descriptor_heap %command%
這些設定會改變 VKD3D‑Proton 在 descriptor heap 與記憶體管理方面的處理方式,有些系統能因此降低崩潰率。
部分玩家也表示以下方法可能稍微改善穩定性:
不過這些都屬於社群實驗性的解法,不同 GPU、驅動與發行版的效果差異很大。
長期穩定性很可能需要多個 Linux 遊戲技術層一起修復。
可能的改善來源包括:
報導指出 Proton 開發者已經在準備專門針對《Forza Horizon 6》的相容性修補。
一旦這些更新進入 Proton Experimental 或未來穩定版,Linux 與 Steam Deck 玩家可能不需要手動調整就能獲得更好的穩定性。
就目前資訊來看,Windows 仍然是玩《Forza Horizon 6》最穩定的平台。
Linux 與 Steam Deck 玩家如果願意嘗試自訂 Proton 與啟動參數,可能可以暫時改善問題。但真正的解決方案很可能要等 Proton、VKD3D‑Proton 與 GPU 驅動更新逐步修正這些相容性問題。