Affiliate Disclosure: By buying the products we recommend, you help keep the site alive. Read more.
Gaming on Linux has never been bigger. While the library isn’t as large as what you find on Windows, today you can play thousands of games for Linux. Many of them are AAA titles.
That’s a big change from a decade ago, when most games were free and open source hobbyist efforts. This transition didn’t occur on its own. What technologies enabled this to happen?
Graphics Drivers and APIs
Video games tax many parts of a computer, but the graphics are the element that stand out the most. If a machine can’t display visuals smoothly, then even casual games are a non-starter. That’s why the existence of quality graphics drivers for Linux were essential to Linux gamers getting their hands on any games at all.
That’s why we start this list with what the big three graphics card manufacturers have done for Linux, plus an essential piece of programming.
Most PCs come with Intel processors, and your typical laptop comes with integrated graphics rather than dedicated cards. These setups offer a great Linux experience, because Intel releases open source drivers for the majority of its graphics chips.
Intel graphics aren’t the best at playing the latest AAA titles on ultra high settings, but they can handle most casual games and plenty of older releases.
AMD provides a proprietary driver for Linux. With this driver available, Linux gamers can get the performance they expect from powerful gaming rigs with AMD graphics cards. This provides access to the most demanding Linux games.
AMD has also released open source drivers, provided hardware specifications for other developers to use, and contributed code to other efforts to make its graphics cards compatible with Linux.
Nvidia has also created a proprietary driver for Linux. A free and open source version is available, but unlike AMD, Nvidia does not offer information for others to use. Developers have created the free driver through reverse engineering. It works well enough to provide a smooth desktop experience, but the gaming performance does not compare to what the proprietary driver can do.
— Billy Khan (@billykhan) August 11, 2018
OpenGL is an application programming interface for rendering 2D or 3D graphics. It serves as a way for a video game to communicate with the dedicated graphics card. It serves as an alternative to Microsoft’s Direct3D, widely used by games on Windows.
Silicon Graphics started the OpenGL project in 1992. In 2006, management shifted to a non-profit technology consortium, the Khronos Group.
Vulkan is an effort to rebuild OpenGL from the ground up. The initial version launched in 2016 and has garnered support. id Software’s id Tech 7 game engine will only support Vulkan on PC.
Game engines are software development suites geared toward games. They provide developers with 2D or 3D graphics rendering, a physics engine, sound, scripting, and other elements of game design. If the relevant game engine doesn’t support Linux, then a game developer is unlikely to support the operating system.
The next three items on the list are game engines that have powered many of the titles that have come to Linux.
5. Quake Engine (id Tech)
id Software is the game developer behind such iconic titles as the Doom and Wolfenstein series. The company embraced Linux in the 1990s and would go on to port a number of its titles. But it was the Quake engine, used to create Quake 2 and subsequent releases, that would leave a lasting imprint on the Linux gaming landscape.
Most of id Software’s games made in the Quake 2 engine have a Linux port. More notably, id released the engine’s source code. Developers would go on to create many free and open source shooters using the Quake engine, such as OpenArena, Alien Arena, Nexuiz, and Warsow.
In 2012, Unity Technologies added the ability to create Linux games using its Unity game engine. Unity began as a game engine for Mac OS X, but it now supports over two dozen platforms. Developers who use Unity can target PCs, mobile devices, game consoles, set-top boxes, and VR devices.
Linux games made using Unity include Shadowrun Returns, Tabletop Simulator, and Life is Strange: Before the Storm.
7. Unreal Engine
In 1998, Epic Games released a first-person shooter by the name of Unreal. While the game spawned a series that sold millions, the engine that powered the game became more popular. Epic Games has licensed the engine to other developers, who have used the technology to create genres as diverse as role-playing games and fighting games.
In 2014, Epic Games added the option to use the Unreal Engine to build games for Linux and Valve’s Linux-based SteamOS. Unreal Engine-powered games that have come to Linux include Borderlands 2, Bioshock Infinite, and Batman: Arkham Knight.
A game doesn’t necessarily need native Linux support to successfully run on a Linux desktop. Emulation is an example of this. Compatibility layers offer a more seamless solution that don’t involve firing up full-blown virtual machines. Next up are two big ones.
Wine, which stands for Wine Is Not an Emulator, is a compatibility layer that enables Linux users to run Windows apps. The program can run some commercial software that people may need for work, such as Microsoft Office and Adobe Photoshop.
But Wine is just as useful to gamers. Even without official Linux support, you can run titles such as Elder Scrolls, Guild Wars, StarCraft, and World of WarCraft.
In some cases, you only need to install the game and run Wine to get the software to run. In other cases, you have to tediously experiment with various settings until you get lucky. Some Linux ports are actually Windows games bundled with Wine. Such software isn’t native, but many gamers don’t notice.
Wine may work with proprietary programs, but it is open source software. This means developers are free to take the code and use it to create other projects. That is what lead to Proton.
Proton is a variation of Wine that Valve has released as an effort to make games easier to port to Linux. Windows games that support Proton would work on Linux systems running Valve’s SteamOS and Steam Machines. They would also run on traditional desktop Linux.
Proton enables developers to release games for Linux without having to allocate resources toward creating a Linux-specific version. This makes life easier for game makers and can lead to more titles available for Linux gamers. On the flip side, games that run via a compatibility layer like Proton may not offer the same kind of performance you might get from a game that was designed for Linux.
Given desktop Linux’s relatively small marketshare, it’s no surprise that game developers haven’t prioritized the OS. But thanks to some popular game distributors making their way to Linux, gamers have had the chance to demonstrate the demand for titles. This has rapidly increased the number of games available today.
The next three online stores close out our list.
10. Humble Bundle
Humble Bundle has become a major digital game distribution platform, but the service’s early days were much more humble. It started with a group of indie developers selling a bundle of games that people could name their own price for. The games were Aquaria, Gish, Lugaru, Penumbra Overture, and World of Goo. A portion of the sales also went to charity.
The first Humble Bundle was a big success that raised hundreds of thousands of dollars in a matter of days, but there were also major implications for Linux. Each title was available for the free and open source desktops.
Then, as the numbers came in, developers saw that Linux users were willing to pay the same amount or more than their Windows and macOS peers. Subsequent bundles further demonstrated that it was possible to make a profit from selling games on Linux.
Steam is the digital distribution service that has captured the PC gaming industry. Many people buy all of their games via Steam. That’s why it was big news when Valve announced in 2012 that it was bringing Steam to Linux.
The Linux version of Steam didn’t bring along all of the titles available for Windows or macOS. The onus was still on developers to port their titles. But if they made that effort, there was now a large marketplace to sell their games on Linux, and it happened to be the same one they were already using.
Steam and Linux aren’t natural bedfellows. Not only are most of these titles proprietary software, but most come with DRM. This is a compromise you have to make if you want to play many of the games coming the industries biggest publishers, and it’s one many gamers are willing to accept.
GOG.com is a digital distribution company formerly known as Good Old Games. In the 1990s, a Poland-based company by the name of CD Projekt started a business obtaining the rights to foreign games, translating text and vocals, and selling games as an alternative to the pirated copies prevalent in the area. The idea was to produce a higher quality product that people would pay for.
In the early 2000s, people started buying digital versions of games, and DRM rose as a way to stop buyers from sharing copies. CD Projekt created a subsidiary known as Good Old Games that sold classic titles DRM-free, using the company’s experience reverse engineering games to make titles compatible with modern hardware.
In 2012, Good Old Games announced it would start selling indie games and AAA titles. At this time, the name changed to GOG.com. In 2014, the company announced Linux support. Titles remain DRM-free, making the site the easiest place to find and download DRM-free games for Linux.
The Future Is Bright for Linux Gaming
Relatively few gamers use desktop Linux, but the market is changing. By using Linux to power its Steam machines, Valve is pushing developers to create games to run on Linux, even if they turn to a workaround like Proton. Google is encouraging development too by launching its Linux-based Stadia gaming platform.
Then when you consider widespread support for Vulkan, you’re looking at a much friendlier environment for Linux gaming.
With the way things are going, the only time better to be a Linux gamer than now are the days ahead. So sit back, grab a Linux-friendly game controller, and have fun.