每个 Linux 游戏玩家都绝不想要的恼人体验
Linux 游戏
![](/data/attachment/album/201902/27/233004m2ir2c2q4auusfsc.jpg)


（LCTT 译注：本文原文发表于 2016 年，可能有些信息已经过时。）


[在 Linux 平台上玩游戏](https://itsfoss.com/linux-gaming-guide/) 并不是什么新鲜事，现在甚至有专门的 [Linux 游戏发行版](https://itsfoss.com/linux-gaming-distributions/)，但是这不意味着在 Linux 上打游戏的体验和在 Windows 上一样顺畅。


为了确保我们和 Windows 用户同样地享受游戏乐趣，哪些问题是我们应该考虑的呢？


[Wine](https://itsfoss.com/use-windows-applications-linux/)、[PlayOnLinux](https://www.playonlinux.com/en/) 和其它类似软件不总是能够让我们玩所有流行的 Windows 游戏。在这篇文章里，我想讨论一下为了拥有最好的 Linux 游戏体验所必须处理好的若干因素。


### #1 SteamOS 是开源平台，但 Steam for Linux 并不是


正如 [StemOS 主页](http://store.steampowered.com/steamos/)所说， 即便 SteamOS 是一个开源平台，但 Steam for Linux 仍然是专有的软件。如果 Steam for Linux 也开源，那么它从开源社区得到的支持将会是巨大的。既然它不是，那么 [Ascension 计划的诞生自然是不可避免的](http://www.ibtimes.co.uk/reddit-users-want-replace-steam-open-source-game-launcher-project-ascension-1498999)：






Ascension 是一个开源的游戏启动器，旨在能够启动从任何平台购买、下载的游戏。这些游戏可以是 Steam 平台的、[Origin 游戏](https://www.origin.com/)平台的、Uplay 平台的，以及直接从游戏开发者主页下载的，或者来自 DVD、CD-ROM 的。


Ascension 计划的开端是这样：[某个观点的分享](https://www.reddit.com/r/pcmasterrace/comments/33xcvm/we_hate_valves_monopoly_over_pc_gaming_why/)激发了一场与游戏社区读者之间有趣的讨论，在这场讨论中读者们纷纷发表了自己的观点并给出建议。


### #2 与 Windows 平台的性能比较


在 Linux 平台上运行 Windows 游戏并不总是一件轻松的任务。但是得益于一个叫做 [CSMT](https://github.com/wine-compholio/wine-staging/wiki/CSMT)（多线程命令流）的特性，尽管离 Windows 级别的性能还有相当长的路要走，PlayOnLinux 现在依旧可以更好地解决这些性能方面的问题。


Linux 对游戏的原生支持在过去发行的游戏中从未尽如人意。


去年，有报道说 SteamOS 比 Windows 在游戏方面的表现要[差得多](http://arstechnica.com/gaming/2015/11/ars-benchmarks-show-significant-performance-hit-for-steamos-gaming/)。古墓丽影去年在 SteamOS 及 Steam for Linux 上发行，然而其基准测试的结果与 Windows 上的性能无法抗衡。






这明显是因为游戏是基于 [DirectX](https://en.wikipedia.org/wiki/DirectX) 而不是 [OpenGL](https://en.wikipedia.org/wiki/OpenGL) 开发的缘故。


古墓丽影是[第一个使用 TressFX 的游戏](https://www.gamingonlinux.com/articles/tomb-raider-released-for-linux-video-thoughts-port-report-included-the-first-linux-game-to-use-tresfx.7124)。下面这个视频包涵了 TressFX 的比较：






下面是另一个有趣的比较，它显示出使用 Wine + CSMT 带来的游戏性能比 Steam 上原生的 Linux 版游戏带来的游戏性能要好得多！这就是开源的力量！






以防 FPS 损失，TressFX 已经被关闭。


以下是另一个有关在 Linux 上最新发布的 “[Life is Strange](http://lifeisstrange.com/)” 在 Linux 与 Windows 上的比较：






[Steam for Linux](https://itsfoss.com/install-steam-ubuntu-linux/) 开始在这个新游戏上展示出比 Windows 更好的游戏性能，这是一件好事。


在发布任何 Linux 版的游戏前，开发者都应该考虑优化游戏，特别是基于 DirectX 并需要进行 OpenGL 转制的游戏。我们十分希望 Linux 上的<ruby> <a href="https://itsfoss.com/deus-ex-mankind-divided-linux/">  杀出重围：人类分裂 </a> <rt>  Deus Ex: Mankind Divided </rt></ruby> 在正式发行时能有一个好的基准测试结果。由于它是基于 DirectX 的游戏，我们希望它能良好地移植到 Linux 上。[该游戏执行总监说过这样的话](http://wccftech.com/deus-ex-mankind-divided-director-console-ports-on-pc-is-disrespectful/)。


### #3 专有的 NVIDIA 驱动


相比于 [NVIDIA](http://nvidia.com/)，[AMD 对于开源的支持](http://developer.amd.com/tools-and-sdks/open-source/)绝对是值得称赞的。尽管 [AMD](http://amd.com/) 因其更好的开源驱动在 Linux 上的驱动支持挺不错，而 NVIDIA 显卡用户由于开源版本的 NVIDIA 显卡驱动 “Nouveau” 有限的能力，仍不得不用专有的 NVIDIA 驱动。


曾经，Linus Torvalds 大神也分享过他关于“来自 NVIDIA 的 Linux 支持完全不可接受”的想法。






你可以在这里观看完整的[谈话](https://youtu.be/MShbP3OpASA)，尽管 NVIDIA 回应 [承诺更好的 Linux 平台支持](https://itsfoss.com/nvidia-optimus-support-linux/)，但其开源显卡驱动仍如之前一样毫无起色。


### #4 需要 Linux 平台上的 Uplay 和 Origin 的 DRM 支持






以上的视频描述了如何在 Linux 上安装 [Uplay](http://uplay.com/) DRM。视频上传者还建议说并不推荐使用 Wine 作为 Linux 上的主要的应用和游戏支持软件。相反，更鼓励使用原生的应用。


以下视频是一个关于如何在 Linux 上安装 [Origin](http://origin.com/) 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 的支持](http://www.pcworld.com/article/2940470/hey-gamers-directx-11-is-coming-to-linux-thanks-to-codeweavers-and-wine.html) 的公告，在 Linux 上畅玩新发大作仍是长路漫漫。


现在你可以[从 Codweavers 购买 Crossover](https://itsfoss.com/deal-run-windows-software-and-games-on-linux-with-crossover-15-66-off/) 以获得可得到的最佳 DirectX 11 支持。这个在 Arch Linux 论坛上的[频道](https://bbs.archlinux.org/viewtopic.php?id=214771)清楚展现了将这个梦想成真需要多少的努力。以下是一个 [Reddit 频道](https://www.reddit.com/r/linux_gaming/comments/3ap3uu/directx_11_support_coming_to_codeweavers/) 上的有趣 [发现](https://ghostbin.com/paste/sy3e2)。这个发现提到了[来自 Codeweavers 的 DirectX 11 补丁](https://www.codeweavers.com/about/blogs/caron/2015/12/10/directx-11-really-james-didnt-lie)，现在看来这无疑是好消息。


### #6 不是全部的 Steam 游戏都可跑在 Linux 上


随着 Linux 游戏玩家一次次错过主要游戏的发行，这是需要考虑的一个重点，因为大部分主要游戏都在 Windows 上发行。这是[如何在 Linux 上安装 Windows 版的 Steam 的教程](https://itsfoss.com/linux-gaming-guide/)。


### #7 游戏发行商对 OpenGL 更好的支持


目前开发者和发行商主要着眼于用 DirectX 而不是 OpenGL 来开发游戏。现在随着 Steam 正式登录 Linux，开发者应该同样考虑在 OpenGL 下开发。


[Direct3D](https://en.wikipedia.org/wiki/Direct3D) 仅仅是为 Windows 平台而打造。而 OpenGL API 拥有开放性标准，并且它不仅能在 Windows 上同样也能在其它各种各样的平台上实现。


尽管是一篇很老的文章，但[这个很有价值的资源](http://blog.wolfire.com/2010/01/Why-you-should-use-OpenGL-and-not-DirectX)分享了许多有关 OpenGL 和 DirectX 现状的很有想法的信息。其所提出的观点确实十分明智，基于按时间排序的事件也能给予读者启迪。


在 Linux 平台上发布大作的发行商绝不应该忽视一个事实：在 OpenGL 下直接开发游戏要比从 DirectX 移植到 OpenGL 合算得多。如果必须进行平台转制，移植必须被仔细优化并谨慎研究。发布游戏可能会有延迟，但这绝对值得。


有更多的烦恼要分享？务必在评论区让我们知道。




---


via: <https://itsfoss.com/linux-gaming-problems/>


作者：[Avimanyu Bandyopadhyay](https://itsfoss.com/author/avimanyu/) 译者：[tomjlw](https://github.com/tomjlw) 校对：[wxy](https://github.com/wxy)


本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译，[Linux中国](https://linux.cn/) 荣誉推出


OK
[Gaming on Linux](https://itsfoss.com/linux-gaming-guide/) has come a long way. There are dedicated [Linux gaming distributions](https://itsfoss.com/linux-gaming-distributions/) now. But this doesn’t mean that gaming experience on Linux is as smooth as on Windows.

What are the obstacles that should be thought about to ensure that we enjoy games as much as Windows users do?

[Wine](https://itsfoss.com/use-windows-applications-linux/), [PlayOnLinux](https://www.playonlinux.com/en/) and other similar tools are not always able to play every popular Windows game. In this article, I would like to discuss various factors that must be dealt with in order to have the best possible Linux gaming experience.

## #1 SteamOS is Open Source, Steam for Linux is NOT

As stated on the [SteamOS page](http://store.steampowered.com/steamos/), even though [SteamOS is open source](https://itsfoss.com/steamos/), Steam for Linux continues to be proprietary. Had it also been open source, the amount of support from the open source community would have been tremendous! Since it is not, [the birth of Project Ascension was inevitable](http://www.ibtimes.co.uk/reddit-users-want-replace-steam-open-source-game-launcher-project-ascension-1498999):

Project Ascension is an open source game launcher designed to launch games that have been bought and downloaded from anywhere – they can be Steam games, [Origin games](https://www.origin.com), Uplay games, games downloaded directly from game developer websites or from DVD/CD-ROMs.

Here is how it all began: [Sharing The Idea](https://www.reddit.com/r/pcmasterrace/comments/33xcvm/we_hate_valves_monopoly_over_pc_gaming_why/) resulted in a very interesting discussion with readers all over from the gaming community pitching in their own opinions and suggestions.

## #2 Performance compared to Windows

Getting Windows games to run on Linux is not always an easy task. But thanks to a feature called [CSMT](https://github.com/wine-compholio/wine-staging/wiki/CSMT) (command stream multi-threading), PlayOnLinux is now better equipped to deal with these performance issues, though it’s still a long way to achieve Windows level outcomes.

Native Linux support for games has not been so good for past releases.

Last year, it was reported that SteamOS performed [significantly worse](http://arstechnica.com/gaming/2015/11/ars-benchmarks-show-significant-performance-hit-for-steamos-gaming/) than Windows. Tomb Raider was released on SteamOS/Steam for Linux last year. However, benchmark results were [not at par](https://www.gamingonlinux.com/articles/tomb-raider-benchmark-video-comparison-linux-vs-windows-10.7138) with performance on Windows.

This was much obviously due to the fact that the game had been developed with [DirectX](https://en.wikipedia.org/wiki/DirectX) in mind and not [OpenGL](https://en.wikipedia.org/wiki/OpenGL).

Tomb Raider is the [first Linux game that uses TressFX](https://www.gamingonlinux.com/articles/tomb-raider-released-for-linux-video-thoughts-port-report-included-the-first-linux-game-to-use-tresfx.7124). This video includes TressFX comparisons:

Here is another interesting comparison which shows Wine+CSMT performing much better than the native Linux version itself on Steam! This is the power of Open Source!

TressFX has been turned off in this case to avoid FPS loss.

Here is another Linux vs Windows comparison for the recently released “[Life is Strange](http://lifeisstrange.com)” on Linux:

It’s good to know that [ Steam for Linux](https://itsfoss.com/install-steam-ubuntu-linux/) has begun to show better improvements in performance for this new Linux game.

Before launching any game for Linux, developers should consider optimizing them especially if it’s a DirectX game and requires OpenGL translation. We really do hope that [Deus Ex: Mankind Divided on Linux](https://itsfoss.com/deus-ex-mankind-divided-linux/) gets benchmarked well, upon release. As its a DirectX game, we hope it’s being ported well for Linux. Here’s [what the Executive Game Director had to say](http://wccftech.com/deus-ex-mankind-divided-director-console-ports-on-pc-is-disrespectful/).

## #3 Proprietary NVIDIA Drivers

[AMD’s support for Open Source](http://developer.amd.com/tools-and-sdks/open-source/) is definitely commendable when compared to [NVIDIA](http://nvidia.com). Though [AMD](http://amd.com) driver support is [pretty good on Linux](http://www.makeuseof.com/tag/open-source-amd-graphics-now-awesome-heres-get/) now due to its better open source driver, NVIDIA graphic card owners will still have to use the proprietary NVIDIA drivers because of the limited capabilities of the open-source version of NVIDIA’s graphics driver called Nouveau.

In the past, legendary Linus Torvalds has also shared his thoughts about Linux support from NVIDIA to be totally unacceptable:

You can watch the complete talk [here](https://youtu.be/MShbP3OpASA). Although NVIDIA responded with [a commitment for better linux support](https://itsfoss.com/nvidia-optimus-support-linux/), the open source graphics driver still continues to be weak as before.

## #4 Need for Uplay and Origin DRM support on Linux

The above video describes how to install the [Uplay](http://uplay.com) DRM on Linux. The uploader also suggests that the use of wine as the main tool of games and applications is not recommended on Linux. Rather, preference to native applications should be encouraged instead.

The following video is a guide about installing the [Origin](http://origin.com) DRM on Linux:

Digital Rights Management Software adds another layer for game execution and hence it adds up to the already challenging task to make a Windows game run well on Linux. So in addition to making the game execute, W.I.N.E has to take care of running the DRM software such as Uplay or Origin as well. It would have been great if, like Steam, Linux could have got its own native versions of Uplay and Origin.

## #5 DirectX 11 support for Linux

Even though we have tools on Linux to run Windows applications, every game comes with its own set of tweak requirements for it to be playable on Linux. Though there was an announcement about [DirectX 11 support for Linux](http://www.pcworld.com/article/2940470/hey-gamers-directx-11-is-coming-to-linux-thanks-to-codeweavers-and-wine.html) last year via Code Weavers, it’s still a long way to go to make playing newly launched titles on Linux a possibility. Currently, you can

Currently, you can [buy Crossover from Codeweavers](https://itsfoss.com/deal-run-windows-software-and-games-on-linux-with-crossover-15-66-off/) to get the best DirectX 11 support available. This [thread](https://bbs.archlinux.org/viewtopic.php?id=214771) on the Arch Linux forums clearly shows how much more effort is required to make this dream a possibility. Here is an interesting [find](https://ghostbin.com/paste/sy3e2) from a [Reddit thread](https://www.reddit.com/r/linux_gaming/comments/3ap3uu/directx_11_support_coming_to_codeweavers/), which mentions Wine getting [DirectX 11 patches from Codeweavers](https://www.codeweavers.com/about/blogs/caron/2015/12/10/directx-11-really-james-didnt-lie). Now that’s definitely some good news.

## #6 100% of Steam games are not available for Linux


This is an important point to ponder as Linux gamers continue to miss out on every major game release since most of them land up on Windows. Here is a guide to [install Steam for Windows on Linux](https://itsfoss.com/linux-gaming-guide/).

## #7 Better Support from video game publishers for OpenGL

Currently, developers and publishers focus primarily on DirectX for video game development rather than OpenGL. Now as Steam is officially here for Linux, developers should start considering development in OpenGL as well.

[Direct3D](https://en.wikipedia.org/wiki/Direct3D) is made solely for the Windows platform. The OpenGL API is an open standard, and implementations exist for not only Windows but a wide variety of other platforms.

Though quite an old article, [this valuable resource](http://blog.wolfire.com/2010/01/Why-you-should-use-OpenGL-and-not-DirectX) shares a lot of thoughtful information on the realities of OpenGL and DirectX. The points made are truly very sensible and enlightens the reader about the facts based on actual chronological events.

Publishers who are launching their titles on Linux should definitely not leave out the fact that developing the game on OpenGL would be a much better deal than translating it from DirectX to OpenGL. If conversion has to be done, the translations must be well optimized and carefully looked into. There might be a delay in releasing the games but still it would definitely be worth the wait.

Have more annoyances to share? Do let us know in the comments.