Valve's upcoming Steam box has fueled a lot of chatter about Linux as a gaming platform. John Carmack has an interesting take on the topic, and he's posted his thoughts on Reddit. Rather than developing native Linux ports, the id Software programming guru believes emulation is the best approach given the current climate.
I truly do feel that emulation of some sort is a proper technical direction for gaming on Linux. It is obviously pragmatic in the range of possible support, but it shouldn’t have the technical stigma that it does. There really isn’t much of anything special that a native port does – we still make OpenGL calls, winsock is just BSD sockets, windows threads become pthreads, and the translation of input and audio interfaces don’t make much difference (XInput and Xaudio2 are good APIs!). A good shim layer should have far less impact on performance than the variability in driver quality.
Translating from D3D to OpenGL would involve more inefficiencies, but figuring out exactly what the difficulties are and making some form of “D3D interop” extension for OpenGL to smooth it out is a lot easier than making dozens of completely refactored, high performance native ports.
Carmack goes on to say that emulation could allow developers to support Linux with "little more effort" than what would be required to get their games working with Windows XP. He does concede that Linux ports could be "up and running in a week or two," but he also points out that a lot more work is required to create an officially supported binary.
Id Software has some experience in this realm, having released Linux versions of Quake Live and Quake III Arena. In both cases, the conventional wisdom that "native Linux games are not a good market" proved true, Carmack says.
One could argue that Valve getting into the Linux gaming business could dramatically increase the size of the market, making native ports more viable. Carmack is supportive of Steam on Linux, and he actually sees it as part of the path forward for emulated games. I wonder if that means the upcoming Doom 4 will come to Linux—and Steam—in emulated form. Thanks to Phoronix for the tip.
|1. GKey13 - $650||2. JohnC - $600||3. davidbowser - $501|
|4. cmpxchg - $500||5. DeadOfKnight - $400||6. danny e. - $375|
|7. the - $360||8. Ryszard - $351||9. rbattle - $350|
|10. Ryu Connor - $350|
|Here's the not-so-live video version of The TR Podcast 164||16|
|Here's what's cooking in Damage Labs||29|
|Deal of the week: An IPS ultra-wide for $420, plus cheap SSDs and more||26|
|Microsoft's quarterly revenue up 25% on strong Surface, Xbox sales||23|
|Assassin's Creed Unity PC requires 6GB of RAM, GTX 680||233|
|Join us as we attempt to live stream The TR Podcast tonight||13|
|Civ: Beyond Earth with Mantle aims to end multi-GPU microstuttering||74|
|CPU startup claims to achieve 3x IPC gains with VISC architecture||61|
|I just found this AMAZING trick! Call of Duty takes up 0GB if you just don't buy it!||+122|