The inability to play the latest off the shelf commercial games has been a thorn in the side of Linux for a long time. With companies such as Valve starting to embrace other platforms, will that be the catalyst Linux needs to become a first class citizen?
Removing the Block
For Linux to become a gamer’s OS it ideally needs to support the latest games. This is unlikely to happen as long as the market continues to use DirectX, instead of OpenGL. Should the primary API change, even if there is no native Linux version of the game, it can be more easily ported (not that it necessarily will be).
Gaming company Wolfire has a great article on why they use OpenGL instead of DirectX (and why other companies should too). They write:
“Given that OpenGL has less vendor support, is no longer used in games, is being actively attacked by Microsoft, and has no marketing momentum, why should we still use it? Wouldn’t it be more profitable to ditch it and use DirectX like everyone else? No, because in reality, OpenGL is more powerful than DirectX, supports more platforms, and is essential for the future of games… if you use OpenGL, you get faster and more powerful graphics features than DirectX 11, and you get them on all versions of Windows, Mac and Linux, as well as the PS3, Wii, PSP, DS, and iPhone. You also get these features in the rapidly-developing WebGL standard, which may become the foundation for the next generation of browser games.”
There have, in fact, been a number of companies which have released official Linux versions of their commercial games. The retail pack of Unreal Tournament 2004 for example, included a Linux installer which meant the game was naively installable and playable right from the start. The list might surprise you.
Older games and engines such as Quake have been open sourced (after their “useful” life), providing the free software community with tools to create a large number of high quality games. As such, there is a large free gaming community building, however the issue of current commercial games has not yet been fully addressed (and might never be).
So while we wait for gaming studios to release Linux versions, what other choices do we have besides Wine?
Well, there’s always independent porting. There have been a number of attempts to achieve this in the past, the most famous perhaps being Loki Software which was founded in 1998. Loki was successful in porting several key games over to Linux, however in August 2001 they filed for bankruptcy, just three years after they began. There are still a number of porters, busy making commercial games work under Linux.
Unfortunately, porting is not always successful and is expensive. It also means that the latest games are never available at the time of creation. Indeed for that we need companies to create a release for all platforms.
Of course, just because a game is built on OpenGL doesn’t necessarily mean that it will be ported across. Most of Blizzard Entertainment’s titles have been released for Mac for years, but few (if any) have been ported. Nevertheless, the key point is that DirectX is the major barrier to commercial game adoption on Linux. Once the demand is there, the hard part has been done and releases for Linux should follow.
Sign of things to come?
There are signs that things are starting to change, however. Recently, gaming company Unknown Worlds Entertainment discussed plans for a native Linux version of their Spark engine. Technical Director Max McGuire wrote:
“Currently our engine and tools only work on Windows, and that will be the only platform Natural Selection 2 will be available on at release. However, most of the engine is not platform specific. The largest Windows-specific piece is the low level rendering code which is built on Direct3D. In the interest of having our engine run on Linux and OS X someday, this low level rendering code is wrapped up so that it’s mostly separate from the rest of the engine. With a small amount of effort, we can swap out this piece with an OpenGL implementation that will work on Linux and OS X. All of our tools are built using the cross-platform wxWidgets framework, so once we get the engine working on another platform, bringing the tools over won’t be too much work.”
That would be a great thing indeed. Wolfire has already released one game for Linux called Lugaru, with its sequel Overgrowth currently in Alpha stage of development.
More recently, Valve announced that it would be releasing Mac versions of their games, including the popular Steam game deliver system. This will also include their proprietary gaming engine, ironically named Source.
They are able to do this easily, because they made the decision to support OpenGL as well as DirectX in their engine.
Director of development John Cook said that Valve will be treating the Mac as a tier-1 platform, with all future games released at the same time for all supported platforms. Unfortunately, this does not yet include Linux. What this means though, is that with just 5% market share Mac is becoming a popular enough platform for gaming companies to support it. If the marketshare of Linux warranted the move, it would be relatively simple for a company such as Valve to release their games for Linux also. With companies porting their engines to OpenGL and games to a Unix operating system, half of the battle is already won for Linux. What remains is that ever elusive market share.
While world domination hasn’t happened yet, Linux does have more potential than Mac simply because it can run on any hardware. Potentially, the entire Windows market could be replaced with Linux tomorrow – that just can’t happen for OS X. So the times couldn’t be better. With Microsoft’s market share slowly dropping and the popularity of Linux increasing, perhaps it won’t be long before we will have enough influence to garner some attention from gaming companies.
If commercial gaming on Linux is something that you’re passionate about, then there are a number of things you can do. Firstly, support OpenGL games over DirectX games. The more popular OpenGL is for commercial games, the more games will be created using it and the greater chance they stand of being ported to Linux. You can also contact companies such as Valve and petition them to also create a Linux version.
With the general need to be cross-platform starting to take shape and companies looking anywhere for profits in tough times, now could be the perfect opportunity to strike.