I thought I would take the time to create a thread dedicated to Linux Gaming, where people can see just what the Linux gaming market actually consists of. I have seen a lot of people posting things like "Well, Linux looks cool, but it just doesn't look like it can run my games...
", well I have created this thread to assist people who are looking into Linux, and who enjoy gaming. I will probably be updating this post quite often, because (thanks Eskom), I don't have time to write everything down due to my power going out in 20 minutes, so this will look half-finished.
I will try to break this down into "Chapters", if you will.
What you need to know
There are one or two programs I may mention (mostly "Wine" and "Cedega"), these are basically emulators (even though they really aren't, but they achieve emulation) that are able to run Windows software on Linux (although not all software), Wine is generally used for applications (i.e. Photoshop), although WoW works on it as well (as I am sure other games do too). Cedega was originally built off the wine "API", however it includes DirectX integration allowing one to play more "advanced" games on Linux. Cedega, however, comes with a monthly fee (in a sense, you can pay the $5 once off and use Cedega indefinitely, but you will not be entitled to support or updates).
DirectX 10 functionality is not yet available on Linux. Sorry guys, you won't be playing Crysis on full any time soon, but that's just the way life goes, and chances are high that by the time PCs are available that are actually capable of running Crysis on full, DX10 will be out for Linux anyway
DirectX is not the only "graphical software" out there. Few people seem to have heard of OpenGL (Open Graphics Library), which is used to power 3D engines for ID software (Quake series, Doom series, etc.). I will discuss this topic a bit later one.
So why aren't more games made for Linux?
Basically, because Microsoft owns the industry. This is pretty much due to the horrifying concept of Vendor Lock-ins. I would take the time to explain this concept, but isilanes from Handyfloss does it so very well, thus I will quote:
Make sense?
Here is how it pertains to Microsoft/Linux:
You can read the full article from which these quotes are taken here
Linux and DirectX
Cedega has managed to "emulate" (or rather incorporate the DirectX API), making most DirectX games playable on Linux. The issue with this, however, is that when a new version of DirectX is released (i.e. DirectX 10), Cedega has to wait for Microsoft to release the DX API to the public before beginning work on it, whereas all other gaming companies locked in with Microsoft have had access to the APIs right through the development of it. This means that games running the new DX version come out too quickly after the release of it (new DX version), that Cedega has not had a chance to incorporate it yet, thus the only way to play games using said DX version is by using Windows.
Linux and OpenGL
You know how sometimes you start dating this relatively pretty girl, and then she invites you over for dinner where you meet her insanely hot step-sister? Well think of DirectX as your date, and OpenGL as her step-sister. So you're sitting there and wondering why you met your date before you met her sister, and then you realise that it's because your date is a total attention whore pretty much being pimped by her father, meanwhile her super hot step-sister is locked in the basement and any guy who wants to get with her better be able to dodge her step-father's shotgun blasts. As you may now have guessed, the father is Microsoft. I may have taken this metaphor a bit too far...
Basically game developers are not using the awesomeness of OpenGL because it would anger Microsoft, and game development companies just can't take that kind of chance because Windows is pretty much 90% of the OS market.
There are, of course, a number of games (and game development companies) who pretty much give Microsoft the middle finger and do whatever the hell they want, which generally includes using OpenGL. Because you are probably too lazy to click on a link, I will list some of these games here:
* America's Army
* Call of Duty
* City of Heroes
* City of Villains
* Counter-Strike
* Doom 3
* Enemy Territory: Quake Wars
* Far Cry – Defaults to D3D
* Half-Life (not Half-Life 2)
* Neverwinter Nights
* Penumbra: Overture
* Prey
* Quake series
* Serious Sam
* Serious Sam 2 – Defaults to D3D
* Starsiege: Tribes
* Star Wars Jedi Knight: Jedi Academy
* The Chronicles of Riddick: Escape from Butcher Bay
* Ultima IX: Ascension
* Unreal series
* Warcraft 3 - Defaults to D3D in Windows
* Wolfenstein: Enemy Territory
* World of Warcraft - Defaults to D3D in Windows
* X-Plane
So yes, if you wish to take a moment to recall just how awesome some of those games look, by all means; I'll wait. If you wanna find out about more OpenGL games, check out this Wikipedia article.
I will try to break this down into "Chapters", if you will.
What you need to know
There are one or two programs I may mention (mostly "Wine" and "Cedega"), these are basically emulators (even though they really aren't, but they achieve emulation) that are able to run Windows software on Linux (although not all software), Wine is generally used for applications (i.e. Photoshop), although WoW works on it as well (as I am sure other games do too). Cedega was originally built off the wine "API", however it includes DirectX integration allowing one to play more "advanced" games on Linux. Cedega, however, comes with a monthly fee (in a sense, you can pay the $5 once off and use Cedega indefinitely, but you will not be entitled to support or updates).
DirectX 10 functionality is not yet available on Linux. Sorry guys, you won't be playing Crysis on full any time soon, but that's just the way life goes, and chances are high that by the time PCs are available that are actually capable of running Crysis on full, DX10 will be out for Linux anyway
DirectX is not the only "graphical software" out there. Few people seem to have heard of OpenGL (Open Graphics Library), which is used to power 3D engines for ID software (Quake series, Doom series, etc.). I will discuss this topic a bit later one.
So why aren't more games made for Linux?
Basically, because Microsoft owns the industry. This is pretty much due to the horrifying concept of Vendor Lock-ins. I would take the time to explain this concept, but isilanes from Handyfloss does it so very well, thus I will quote:
isilanes(Handyfloss) said:Imagine a country with no bicycles.
One day a guy comes up with the idea of making them, and starts to produce, and sell, bicycles that we shall call of type A. Being an empty market, the A-type bicycles quickly triumph, and the maker makes a lot of money.
But some time later, a second guy devises a better bike design (type B), and decides to produce and sell it. The price and the quality are better, so when people buy a new bike or replace an old one, they tend to buy bikes of type B. Soon enough, the market is dominated by the new, better, bicycle.
Now imagine a country with no cars.
One day a guy comes up with the idea of making cars, and starts to produce and sell cars of type A. As cars need petrol to run, A-type gas stations develop in parallel to car sales. Building gas stations is expensive, but sales are guaranteed, as everyone has or will have A-type cars, and they need A-type petrol: their growth is synergistic.
But some time later, a second guy devises a better car design (type B) and decides to produce and sell it. The price and the quality are better, BUT drivers can not buy B-type cars, because there is no B-type gas station. The problem is that, since noone has a B-type car, making B-type gas stations is doomed to bankrupt. So, no B-type cars are sold, because there are no B-type gas stations, and B-type gas stations will not be made until B-type cars are popular!
The result is a vendor lock-in.
Make sense?
Here is how it pertains to Microsoft/Linux:
isilanes(Handyfloss) said:* Proprietary communication protocols that will not work with any other OS. This includes modifications on the IE web browser, so that web pages had to be done for it, and then be incompatible with other browsers. Or the MSN protocol, that is kept as closed as possible, to make free clones of the MSN client as little compatible as possible.
* Proprietary file formats that will not be possible to modify with tools other than the “official” MS ones: WMV for video, DOC, XLS, PPT for office documents.
* As much “Windows-only” software as possible, including games. Making games for platforms other than Windows ensues the wrath of MS, something that game makers can not take lightly, since their sales depend on the game actually running under Windows.
* As much “Windows-only” hardware as possible. The first idea that someone gets about an OS is that it is the piece of software that interacts with the hardware. If so, it is astonishing why it is not MS the one incorporating the drivers in the OS, instead of the hardware makers (hardware != software) providing them. We have all grown accustomed to buying printers, mice, external CD/DVD/HDs… with a CD with the “Drivers for Windows 98″ or some such. Why? Windows can not make the drivers out of the blue, true. But the hardware makers can just make the necessary data public, so anyone will be able to make drivers. If the maker keeps these specifications secret, they will simply not sell anything.
You can read the full article from which these quotes are taken here
Linux and DirectX
Cedega has managed to "emulate" (or rather incorporate the DirectX API), making most DirectX games playable on Linux. The issue with this, however, is that when a new version of DirectX is released (i.e. DirectX 10), Cedega has to wait for Microsoft to release the DX API to the public before beginning work on it, whereas all other gaming companies locked in with Microsoft have had access to the APIs right through the development of it. This means that games running the new DX version come out too quickly after the release of it (new DX version), that Cedega has not had a chance to incorporate it yet, thus the only way to play games using said DX version is by using Windows.
Linux and OpenGL
You know how sometimes you start dating this relatively pretty girl, and then she invites you over for dinner where you meet her insanely hot step-sister? Well think of DirectX as your date, and OpenGL as her step-sister. So you're sitting there and wondering why you met your date before you met her sister, and then you realise that it's because your date is a total attention whore pretty much being pimped by her father, meanwhile her super hot step-sister is locked in the basement and any guy who wants to get with her better be able to dodge her step-father's shotgun blasts. As you may now have guessed, the father is Microsoft. I may have taken this metaphor a bit too far...
Basically game developers are not using the awesomeness of OpenGL because it would anger Microsoft, and game development companies just can't take that kind of chance because Windows is pretty much 90% of the OS market.
There are, of course, a number of games (and game development companies) who pretty much give Microsoft the middle finger and do whatever the hell they want, which generally includes using OpenGL. Because you are probably too lazy to click on a link, I will list some of these games here:
* America's Army
* Call of Duty
* City of Heroes
* City of Villains
* Counter-Strike
* Doom 3
* Enemy Territory: Quake Wars
* Far Cry – Defaults to D3D
* Half-Life (not Half-Life 2)
* Neverwinter Nights
* Penumbra: Overture
* Prey
* Quake series
* Serious Sam
* Serious Sam 2 – Defaults to D3D
* Starsiege: Tribes
* Star Wars Jedi Knight: Jedi Academy
* The Chronicles of Riddick: Escape from Butcher Bay
* Ultima IX: Ascension
* Unreal series
* Warcraft 3 - Defaults to D3D in Windows
* Wolfenstein: Enemy Territory
* World of Warcraft - Defaults to D3D in Windows
* X-Plane
So yes, if you wish to take a moment to recall just how awesome some of those games look, by all means; I'll wait. If you wanna find out about more OpenGL games, check out this Wikipedia article.