每個 Linux 遊戲玩家都絕不想要的惱人體驗
(LCTT 譯註:本文原文發表於 2016 年,可能有些資訊已經過時。)
在 Linux 平臺上玩遊戲 並不是什麼新鮮事,現在甚至有專門的 Linux 遊戲發行版,但是這不意味著在 Linux 上打遊戲的體驗和在 Windows 上一樣順暢。
為了確保我們和 Windows 使用者同樣地享受遊戲樂趣,哪些問題是我們應該考慮的呢?
Wine、PlayOnLinux 和其它類似軟體不總是能夠讓我們玩所有流行的 Windows 遊戲。在這篇文章裡,我想討論一下為了擁有最好的 Linux 遊戲體驗所必須處理好的若干因素。
#1 SteamOS 是開源平臺,但 Steam for Linux 並不是
正如 StemOS 主頁所說, 即便 SteamOS 是一個開源平臺,但 Steam for Linux 仍然是專有的軟體。如果 Steam for Linux 也開源,那麼它從開源社群得到的支援將會是巨大的。既然它不是,那麼 Ascension 計劃的誕生自然是不可避免的:
Ascension 是一個開源的遊戲啟動器,旨在能夠啟動從任何平臺購買、下載的遊戲。這些遊戲可以是 Steam 平臺的、Origin 遊戲平臺的、Uplay 平臺的,以及直接從遊戲開發者主頁下載的,或者來自 DVD、CD-ROM 的。
Ascension 計劃的開端是這樣:某個觀點的分享激發了一場與遊戲社群讀者之間有趣的討論,在這場討論中讀者們紛紛發表了自己的觀點並給出建議。
#2 與 Windows 平臺的效能比較
在 Linux 平臺上執行 Windows 遊戲並不總是一件輕鬆的任務。但是得益於一個叫做 CSMT(多執行緒命令流)的特性,儘管離 Windows 級別的效能還有相當長的路要走,PlayOnLinux 現在依舊可以更好地解決這些效能方面的問題。
Linux 對遊戲的原生支援在過去發行的遊戲中從未盡如人意。
去年,有報導說 SteamOS 比 Windows 在遊戲方面的表現要差得多。古墓麗影去年在 SteamOS 及 Steam for Linux 上發行,然而其基準測試的結果與 Windows 上的效能無法抗衡。
這明顯是因為遊戲是基於 DirectX 而不是 OpenGL 開發的緣故。
古墓麗影是第一個使用 TressFX 的遊戲。下面這個視訊包涵了 TressFX 的比較:
下面是另一個有趣的比較,它顯示出使用 Wine + CSMT 帶來的遊戲效能比 Steam 上原生的 Linux 版遊戲帶來的遊戲效能要好得多!這就是開源的力量!
以防 FPS 損失,TressFX 已經被關閉。
以下是另一個有關在 Linux 上最新發布的 “Life is Strange” 在 Linux 與 Windows 上的比較:
Steam for Linux 開始在這個新遊戲上展示出比 Windows 更好的遊戲效能,這是一件好事。
在釋出任何 Linux 版的遊戲前,開發者都應該考慮優化遊戲,特別是基於 DirectX 並需要進行 OpenGL 轉制的遊戲。我們十分希望 Linux 上的殺出重圍:人類分裂 在正式發行時能有一個好的基準測試結果。由於它是基於 DirectX 的遊戲,我們希望它能良好地移植到 Linux 上。該遊戲執行總監說過這樣的話。
#3 專有的 NVIDIA 驅動
相比於 NVIDIA,AMD 對於開源的支援絕對是值得稱讚的。儘管 AMD 因其更好的開源驅動在 Linux 上的驅動支援挺不錯,而 NVIDIA 顯示卡使用者由於開源版本的 NVIDIA 顯示卡驅動 “Nouveau” 有限的能力,仍不得不用專有的 NVIDIA 驅動。
曾經,Linus Torvalds 大神也分享過他關於“來自 NVIDIA 的 Linux 支援完全不可接受”的想法。
你可以在這裡觀看完整的談話,儘管 NVIDIA 回應 承諾更好的 Linux 平臺支援,但其開源顯示卡驅動仍如之前一樣毫無起色。
#4 需要 Linux 平臺上的 Uplay 和 Origin 的 DRM 支援
以上的視訊描述瞭如何在 Linux 上安裝 Uplay DRM。視訊上傳者還建議說並不推薦使用 Wine 作為 Linux 上的主要的應用和遊戲支援軟體。相反,更鼓勵使用原生的應用。
以下視訊是一個關於如何在 Linux 上安裝 Origin DRM 的教程。
數字版權管理(DRM)軟體給遊戲執行又加了一層阻礙,使得在 Linux 上良好執行 Windows 遊戲這一本就充滿挑戰性的任務更有難度。因此除了使遊戲能夠執行之外,W.I.N.E 不得不同時負責執行像 Uplay 或 Origin 之類的 DRM 軟體。如果能像 Steam 一樣,Linux 也能夠有自己原生版本的 Uplay 和 Origin 那就好了。
#5 DirectX 11 對於 Linux 的支援
儘管我們在 Linux 平臺上有可以執行 Windows 應用的工具,每個遊戲為了能在 Linux 上執行都帶有自己的配套調整需求。儘管去年在 Code Weavers 有一篇關於 DirectX 11 對於 Linux 的支援 的公告,在 Linux 上暢玩新發大作仍是長路漫漫。
現在你可以從 Codweavers 購買 Crossover 以獲得可得到的最佳 DirectX 11 支援。這個在 Arch Linux 論壇上的頻道清楚展現了將這個夢想成真需要多少的努力。以下是一個 Reddit 頻道 上的有趣 發現。這個發現提到了來自 Codeweavers 的 DirectX 11 補丁,現在看來這無疑是好訊息。
#6 不是全部的 Steam 遊戲都可跑在 Linux 上
隨著 Linux 遊戲玩家一次次錯過主要遊戲的發行,這是需要考慮的一個重點,因為大部分主要遊戲都在 Windows 上發行。這是如何在 Linux 上安裝 Windows 版的 Steam 的教程。
#7 遊戲發行商對 OpenGL 更好的支援
目前開發者和發行商主要著眼於用 DirectX 而不是 OpenGL 來開發遊戲。現在隨著 Steam 正式登入 Linux,開發者應該同樣考慮在 OpenGL 下開發。
Direct3D 僅僅是為 Windows 平臺而打造。而 OpenGL API 擁有開放性標準,並且它不僅能在 Windows 上同樣也能在其它各種各樣的平臺上實現。
儘管是一篇很老的文章,但這個很有價值的資源分享了許多有關 OpenGL 和 DirectX 現狀的很有想法的資訊。其所提出的觀點確實十分明智,基於按時間排序的事件也能給予讀者啟迪。
在 Linux 平臺上釋出大作的發行商絕不應該忽視一個事實:在 OpenGL 下直接開發遊戲要比從 DirectX 移植到 OpenGL 合算得多。如果必須進行平臺轉制,移植必須被仔細優化並謹慎研究。釋出遊戲可能會有延遲,但這絕對值得。
有更多的煩惱要分享?務必在評論區讓我們知道。
via: https://itsfoss.com/linux-gaming-problems/
作者:Avimanyu Bandyopadhyay 譯者:tomjlw 校對:wxy
訂閱“Linux 中國”官方小程式來檢視
相關文章
- 每個 Linux 新手都應該知道的 10 個命令Linux
- 這款僅2人開發的作品,號稱“玩家每次開啟都會有獨一無二的遊戲體驗”遊戲
- 每個遊戲都需要的十大元素(下)遊戲
- 每個開發人員都需要了解的一個SQL技巧SQL
- 玩家留存和付費的秘密:遊戲體驗遊戲
- 每個開源專案都離不開的三要素
- 自媒體人必備的8個免費學習網站,每一個都值得收藏學習網站
- 每個開發人員都應該知道的WebSockets知識Web
- PDB檔案:每個開發人員都必須知道的
- 每個開發人員都應該知道的 10 個 GitHub 倉庫Github
- 玩家在遊戲中體驗到了什麼?遊戲
- 加固玩家對遊戲的信任度,網易伏羲AI競技機器人全方位提升遊戲體驗遊戲AI機器人
- 為什麼玩家不願在遊戲裡當壞人?遊戲
- Reflect API:每個 JavaScript 開發人員都需要的瑞士軍刀APIJavaScript
- 這八個AR技術值得期待 每個都讓人激動
- 軟體測試人員的煩惱
- 自媒體運營必備的6個網站,自媒體大神都讚不絕口網站
- 遊戲系統設計的基石:體驗樹(量化、視覺化玩家體驗)遊戲視覺化
- 遊戲設計如何創新?——給玩家新的體驗遊戲設計
- 簡單的文字設計就能影響遊戲體驗?遊戲中提升玩家體驗的小設計遊戲
- 每個JavaScript開發人員都應該瞭解UnicodeJavaScriptUnicode
- 5個相見恨晚的Linux命令,每一個都非常實用Linux
- 每個Linux使用者都應該知道的命令列技巧Linux命令列
- 每個遊戲公司都需要達到的兩個目標:產品成功&公司成功遊戲
- 每個Java軟體架構師都應該知道的20件事Java架構
- 每個運維人員應該知道的 10 個 Linux 命令!運維Linux
- 每個開發人員應該知道的 10 個 Linux 命令Linux
- 每個PHP開發者都應該看的書PHP
- Deloitte:調查顯示45%的玩家想要更多影視改編遊戲遊戲
- 每個開發者都應該知道的33個JavaScript概念JavaScript
- 為什麼遊戲設計應重視玩家的“新手體驗”?遊戲設計
- 動態設計:讓玩家有一致的遊戲體驗遊戲
- 遊戲體驗設計:如何縮小玩家學習曲線與體驗反饋的差距?遊戲
- 遊戲體驗:情緒與情感——你的遊戲能騙到玩家的眼淚嗎?遊戲
- 不強佔每一個桌面:Linux不是Windows(轉)LinuxWindows
- 每個程式設計師都應該瞭解的硬體知識程式設計師
- 這個錯誤,每個ScrumMaster都犯過ScrumAST
- 遊戲圈都怕極了未成年玩家遊戲