Wednesday, 9 July 2008

Could Linux be a better gaming OS than Windows?

Linux and Mac users alike will both know that Windows has by far the lion's share of the computer gaming market. Now, you could buy a console, but there are certain types of games (mainly RTS and things like that) which don't often seem to appear on consoles, and are limited to Windows, so by and large if you want to play these types of games you're limited to using Windows. So Windows is currently the only reasonable choice for if you want to play this type of game, as well as many others. A colleague of mine who is a hardcore PC gamer has also told me that FPS games are better suited to the PC.

However, I believe that from an architectural point of view, Windows is not the best platform for gaming. I know that many devoted PC gamers will spend a lot of time, money and effort building a PC designed to get the absolute best performance out of the components. To me, it then seems an incredible waste to then install Windows (especially Vista) on it. Even with several different versions available, it's not possible to optimise Vista to get the absolute best out of it.

Consider this: Sim City Societies requires 512MB RAM for XP, and 1GB for Vista! Processor-wise, it needs 1.7 GHZ for XP and 2.4GHz for Vista! That's a staggering difference, and can easily make the difference between someone being able to run a game on existing hardware, and needing something new.

The point is, Vista, even with several different versions, is essentially a one-size-fits-all operating system. It's not designed to get the best out of your hardware. A lot of components can't be removed (IE, Windows Media Player etc) and replaced with something lighter.

I therefore believe that if it were better supported with native games, Linux has the potential to be a far better operating system for gaming, especially for hardcore gamers. Here's my reasoning:
  1. Lighter footprint: Pretty much any Linux distro is lighter in terms of system resources than Windows XP or Vista. You'd very likely get better performance out of a fairly mainstream distro like Ubuntu or Fedora than even XP, let alone Vista. And there are plenty of distros a lot lighter than these.
  2. Customisability: Many Windows applications can't be removed, as stated above. Pretty much anything in Linux can be removed, so desktop-wise you could drop Gnome or KDE in favour of IceWM or Fluxbox, remove Compiz etc to get more performance out of it - after all, the desktop doesn't matter when you're playing Crysis. And that's just with mainstream distros as mentioned above - something like Arch Linux enables you to go a lot further.
  3. Freedom to compile system components yourself: If you take the time to compile applications specifically for your hardware, you can get a much faster system. I've never tried Gentoo, but I'm aware that it basically compiles every last component for you from scratch, letting you optimise it for every piece of hardware (for instance, you can choose to optimise the kernel for your processor, rather than using one compiled to work on any x86 or amd64 processor), and giving a truly staggering speed boost. Well, isn't that exactly what gamers want? And if they're willing to spend so much time and effort on building it, isn't it worthwhile to take a bit more time to compile everything in order to get the most out of it?
At present, I still think Linux lacks somewhat as a gaming platform, despite the presence of things like Wine, Cedega and Crossover. Many of these things involve some system overhead, making games slower than they would be running native games.

Of course, there's one massive barrier to the production of native Linux games: DirectX. This is a big barrier. What might happen to change that:
  1. OpenGL: OK, it doesn't provide as much functionality, but I've got to mention it.
  2. Developers abandoning DirectX: Might happen, but doubtful. Can't see any reason why this might happen.
  3. The creation of an open source implementation of DirectX: I believe Wine goes some way to doing this, but it's not exact. I'm thinking something that is to DirectX what Mono is to .NET.
  4. An alternative: Who knows?
I admit I don't know much about DirectX, so much of what I've just written is pure speculation. However, I remain convinced that, at least for hardcore PC gamers, Linux has the potential to be a better operating system than Windows if it were better supported.

What do you think? Am I right or wrong? Are you a PC gamer who'd love to be able to use Linux, or do you think it'd be awful for gaming, even if it was better supported?

69 comments:

Rishi Talreja said...

I completely agree with the idea and I am stupefied at the fact that inspite of all the advantages that linux provides, there are still not that many developers wanting to develop native linux games....I understand their problem that they require a market for their games, and its true that linux though is used by more and more people as days pass, it still doesn't have that many users...I think if their is an aspect which needs to be improved most in linux for even more people to switch to it, besides a unified UI like mac, is support for more games.....if these two things happen, I am pretty sure there will be a whole new crowd joining the flock of us linux enthusiasts which I prefer to call as Linthusiasts :-)

Eugenia Loli said...

Sorry, it won't happen, Linux 3D performance is really bad because the whole DRI thing is badly designed. Plus, OpenGL 2.1 is vastly behind DX10. And all these "compile it yourself" stuff you wrote there are advantages, are actually huge disadvantages.

adinsx said...

Eugenia is right, DRI in X is very poorly designed. So poorly designed, in fact, that the proprietary nVidia drivers bypass it completely (from my understanding).

I personally prefer the structure of OpenGL over DirectX (by far), but it is certainly long overdue for an update, and 3.0 is essentially vaporware at this point.

I do see more games being made for Linux in the future, but not in large numbers until OpenGL and Xorg become more usable.

Unknown said...

The problem is that you can't have a modern game that straight up supports linux. It needs to support a number of distros as well. You're fooling yourself if you think supporting a redhat installation is the same as ubuntu.

Kevin B said...

Imagine the speed increase you could get if video card makers made their own linux OS. I'm sure Nvidia or ATI could make an OS as optimized for their cards as their drivers are.

Anonymous said...

There is NO doubt in my mind. Linux blows Windows away. I wish I would have switched years ago!

http://www.FireMe.To/udi

RedneckNoob said...

It's impossible to develop a "native Linux game" because of the fact that Linux is open source. It's meant for everyone to be able to change it so essentially, nothing in Linux is the same from one distro to another. In order for video game developers to make a game that is native to Linux, Linux can't be open source. Changing one little thing in a distro can completely stop a game from working how it's supposed to, causing massive bugs.

Look at all of the knowledge that is necessary to run Linux, compared to something like windows. Just because a person likes to play computer games doesn't mean they're experienced enough in computer use to be able to handle Linux. Linux requires knowledge that most whom play video games on the computer just lack. In order for Linux to be a better gaming OS than Windows you have to be able to just install it and go. Just because it's got better specifications doesn't mean it's suited for mass use for video games.

Look back to the GameGear. It had amazing tech specs, and was a really good hand held gaming device, but because it didn't have the battery life to compete with the Gameboy, it failed. This is similar to Linux trying to be a gaming operating system. It's lacking simplicity, which is necessary to game in a mass market.

The fact that Linux is open source, that it's for advanced users, and that it lacks the stuff necessary for a mass market is why it could never succeed as a gaming OS. Personally, I think Linux is horrible to try to use for gaming.

Max said...

To be honest, I thought you were going to go into an architectural comparison (at the kernel level). But at a higher level, any hardcore gamer would love being able to strip the resource wasters out if they could. Linux lets them.

IS Desk Manager said...

you like, the most devoted troll ever.

Unknown said...

Actually OpenGL is better than DX10 http://www.winmatrix.com/forums/index.php?showtopic=13647

And penny arcade adventures supports linux, they said it was easy.

Compiling is never mandatory. In linux there is ALWAYS the easy and pretty way to do things AND a fast hardcore way.

Unknown said...

Oh, Quake 4 Doom 3 and UT2004 are all linux native (UT3 stuck in legal for some reason, possible gamespy)

Eric said...

Maybe the future of gaming (and Linux) is somewhere in the middle of all that. With console market growing, and graphic catching up with PC's, Linux could find its niche in powering the next next-gen console (other than xbox of course) and other equipment by the way (ATM, CCTV, medical equipment). The easy way in which you can put some of linux feature at the forefront , customize them remove them. Mix with the growing demand from gamer to have a gaming system that can do more than gaming, i think that if linux plays its cards right there is something there for the penguin to grab.

duckwaltz said...

The issue here is money. Since Windows dominates the market share, windows gamers dominate the games market. Pretty simple really. Developers make games for the system that will sell units.

Anonymous said...

The features of OpenGL 2.1 and the almost ready 3.0 are very capable of taking on DirectX 10. ATi and nVIDIA are still very much interested in keeping good hardware support for them. All the greatest id games for example have been OpenGL, Doom 3 for example, at its release had the best graphics ever seen, id plans to repeat that with Rage and Doom 4

Ted said...

You are actually more correct then you think. linked below is a comparison of Unreal Tournament 2004 running on both windows and linux as well as Quake running on Windows and linux. As you can clearly see from the graph provided, UT2k4 does almost 10fps better under linux 32bit than it does under windows xp and Quake lags behind in the linux version, but only by a few fps.

http://www.mwales.net/Software/LinuxVsWindows/Linux_vs_Windows.html

A-KO said...

Microsoft took the market by storm with Direct X. There's a reason it's popular, and it's not because Microsoft "dominated" the computer market. For a long time 3DFX and OpenGL dominated the market.

The thing that helped was that Microsoft listened to developers. The reality is, nobody wants to reinvent the wheel every time they want to do something. And they want easy to use, easy to expose APIs to some of the very powerful hardware out there.

Take for example the fact that we have scripting languages versus compiled languages. Sure, compiling apps is more efficient, faster, and better--but writing apps that are compiled when you need to do something "quick and dirty" can be a real pain in the ass. Scripting languages popped up, and it allows for a vastly more array of applications to be developed because most of the "heavy lifting" has been done for you. This philosophy holds true even in Linux, where Perl, Python, and Bash are used as opposed to compiling your own program with GCC.

This is why Direct X is popular. It's easier to use and exposes the hardware.

Just for the record, John Carmack of id thinks Microsoft has done a great job with Direct X. He praises it and the company in keynotes at Quakecon a lot, in fact. And I do believe Rage and id tech 5 actually expose Direct X on Windows as opposed to OpenGL.

Just an FYI for a link to a possible reference: http://www.beyond3d.com/content/news/462 their new tech will be using DX9 under Windows.

It's just not there. Not for the developers. And if the developers cannot work on the platform and predict the platform, then the gamers won't follow.

Yi Tiger Huang said...

Interesting idea. A linux distro specifically designed with gaming in mind could be the next big thing.

Anonymous said...

I would use linux if it supported all games and ventrilo ran legit on it.

Matt said...

"I admit I don't know much about DirectX, so much of what I've just written is pure speculation. However, I remain convinced that, at least for hardcore PC gamers, Linux has the potential to be a better operating system than Windows if it were better supported."
This, right there, sums up the whole article better than I could.

1. Memory usage on Windows is not substantially worse than most Linux distros, and is usually less than what OS X runs (but on OS X, everyone forgives that somehow). This is the only point that approaches being valid.

2. How does replacing Media Player with something lighter (like Media Player Classic) affect Crysis performance? And how does removing it give you FPS? It is not like fewer used sectors on your hard disk and less registry entries magically translate to increased FPS.

3. This argument is thoroughly debunked and mocked on http://funroll-loops.info/

If you want to talk about real differences in speed you could talk about whether Linux can offer a more direct route to hardware than Windows or whether kernel architectural differences would amount to actual, and not perceived, gains in speed.

I apologize if I come off as harsh, but if you want to make a statement, you're going to need to back it up. Save the uninformed posts for Slashdot, where that sort of thing is expected.

Yert said...

I don't need to go any further then mentioning the Xbox 360 for what the NT kernel is capable of doing.

Furthermore, I would love to see the architecture that needs to be in place for DX10 in Linux without massive code having to be implemented. It requires WDDM for a reason.

Unknown said...

1. Memory usage on Windows is not substantially worse than most Linux distros, and is usually less than what OS X runs (but on OS X, everyone forgives that somehow). This is the only point that approaches being valid.

I'd like to see the source on that one. I'm sitting at two computers right now, both with the system monitors open, both machines only running it and firefox in the foreground. The vista installation is practically vanilla.

At this moment, vista x64 is using 1.57 gigs of memory, and 1536 megs of pagefile space.

Kubuntu x64 with the kde4/plasma desktop with compiz effects enabled is using 521.8 megs of memory, and no swapfile space.

Neither of these systems have been specially compiled. I can't call my test scientific by any means, but do you care to explain how a 300% increase in memory usage is not substantially more?

I apologize if I come off as harsh, but if you want to make a statement, you're going to need to back it up. Save the uninformed posts for Slashdot, where that sort of thing is expected.

Seanux said...

It's too difficult to get linux up and running for the average joe, and with all of the distros available its nearly impossible to market a product that will work for everyone. The gaming industry is where it is because people buy games and the publishers make hella money. sorry if I've repeated what anyone else has said but its just a flawed business model to put out a product that can't be guarunteed in todays market! the consumer wants easy to use and something that "just works".

why do you think apple is increasing in market share?

Unknown said...

I agree with your core statement...in that Linux is or at least has the potential to be a better gaming platform than Windows. However, that's about all I can agree with.

First off it's really unfair to talk about "Linux" as an OS and compare it against specific versions of Windows. If we're going to compare Windows XP against something, we need a specific version of Linux to compare it against properly. I'm just going to go with Ubuntu, since it's the most popular distro currently. So... that said, is Ubuntu 8.04 more lightweight than Windows Vista? Of course! Definitely...however, it's about equal with Windows XP. And actually, as much as I hate to admit it... a default install of XP without a virus scan or anything else running is actually more lightweight than a default install of Ubuntu...but then again, you'd have to be crazy to run XP without an antivirus/malware program running at all times...so seeing as how most PC gamers are still running XP this argument is not the best in the world, but not completely invalid either. I could maybe see some of the gamer crowd I know using XFCE, which puts you into the Win2000 realm of system resources, but I just can't expect them to be able to deal with running something like Fluxbox or IceWM.

Next up...custom compiles. Don't believe the hype I ran Gentoo for a couple years, and when I switched over to Ubuntu I saw almost zero performance difference. You have to do some really really heavy optimization to make it worth while.

Yes, of course native games are going to run faster than ones running through an interpreter/abstraction layer like WINE. If you look at benchmarks between games like Doom3 and Quake4 that have native ports, Linux usually scores better than on Windows. But unfortunately, we're back to the Direct X issue...which is really bigger than just Direct X even, it's libraries and development platforms in general. We in the open source/Linux community have some excellent tools and libraries available to us...however, none of them seem to be able to compete with Microsoft on ease of use. The majority of programmers out there aren't as hardcore as most would think and aren't willing to put up with alot of the quirks and learning curve required for Linux development. DirectX, or more properly Direct3D is a much higher level abstraction than OpenGL. And there is already a Linux/Unix equivalent to DirectX...it's called SDL. However, it's getting pretty old these days and 2.0 doesn't seem like it's ever gonna be released.

All that said, it really just comes down to marketshare. When Linux has enough marketshare that more developers/publishers think it's worth spending money to develop for...it will happen, but until then all we can do is WhINE, b/c they don't care about 5% or less of the market (some say not even 1% depending on who you ask).

lambda said...

I agree with your article, IMHO

the two reasons why linux isn't making such a big dent in the OS market as it should.

Driver support, most if not all hardware manufacturers write windows drivers for their hardware before it comes out, whereas the *nix community has to catch up months down the track.

Graphical support, this stems from above. *nix having to (mostly) write their own drivers or handle the hand me downs from ati and nvidia. This combined with directX domination.

The problem is, how do we really fix this. Hardware manufacturers want the most buck for their bang, and unless we could convince mass amounts of people to drop windows over night, while simultaneously developing our directX alternative, It may take some time.

Hopefully oneday the market for PC operating systems isn't determined by 'fitting in' (i got windows coz every1 else does) or who can make the most flashy(useless) GUI (vista)

lambda said...

excellent blog in general BTW, definitly blog listing this xD

deathguppie said...

I think there a a lot of idiots posting here, that just like to watch themselves type.

First off, ID software is not abandoning opengl. There is talk about shifting to DX 10 but it hasn't happened yet.

http://www.ditii.com/2007/09/21/john-carmack-annouces-linux-support-and-opengl/

Secondly OpenGL is not "vastly" behind DX10 in some ways it is more advanced but if you want or need the DX10 extensions you can get them through Nvidias cgFX library for OpenGL and on Linux.

Thirdly... What the hell is up with this "DRI is badly designed" thing. Is this coming directly from a software developer?

I think not. Nvidia chose to go their own route for direct rendering for their own reasons ATI on the other hand decided to use the X11 DRI extentions that were built it. With modern drivers on compatable cards they run equally well (some argue the new ATI drivers are actually better than Nvidia's)

I have done some mod/dev work on indie/open source games that run on both Windows and Linux. Most of the crap people are spouting here really is just uninformed and insulting to all of the hard working people that actually work on open source software.

It's fine if you like windows and that's all you want. Just don't talk about what you don't know.

Way said...

I would like to see a linux distro specific to 3d gaming and easy multiseat setup.Make some use of my quad core,4gig,512 gts machine and bring back(or introduce)same room same pc multiplayer fun( split screen and dual monitor) to the pc.There I believe Linux has a potential to shine.

Way C.

Drashna (WGS) said...

You forgot to mention the lack of full driver support. How most non-integrated sound cards do not have the driver support for stuff like EAX, or proper hardware acceleration. Or proper support for some of the advanced functions of video cards. Or lack of real support from a company when you have problems with your OS.

Not to mention 90% of linux users are hardcore elitists who won't touch Vista, because their 486 can't support it.

Unknown said...

OH, btw, The Wii runs Linux.

It DOES power the next hit console. lol.

Everything here is just sad speculation based on thought experiments. Nothing really interesting.

Anonymous said...

Probably true but also probably will never happen because Microsoft pulls the strings and the obvious drawbacks of Linux (like DirectX or the lack thereof). Also I think game developers will just choose to be lazy and not do the open source DirectX and the "alternatives." The best case scenario for us gamers is that Windows steps it up and builds a operating system that can look good sometimes but also can perform like a rock when it needs to.

-AP
http://p8007.wordpress.com/

Jase said...

Personally I do agree to some degree. It's hard to compare the two though. Yes, DRI is bad, but there have been a number of cases where OpenGL performance in Linux has been superior than the vendor's (i.e. Not MS's software 1.1 implementation).

DirectX does more than OpenGL in the sense it handles sound, input and networking, and therefore very much a complete development stack. Other APIs such as OpenAL probably need to be used if you are using Linux as well so this needs to be considered too to some degree.

Graphically speaking there is little difference between OpenGL 2.x and Direct X 9 or 10. All of these have shaders which is where most of of the slavery is supposed to happen. OpenGL as it stands though needs more developer 'book-keeping' as it does have a lot of baggage. OpenGL 3.x and OpenGL ES (which the PS3 uses) seem to address a lot of this, and coupled with the flop of DirectX 10 could make developers reconsider OpenGL.

There is no doubt that Linux is a technically superior OS, however the problem's roots are a social one, not a technical one. Developers have to be convinced there is a the market share and that they can make a viable business from selling to Linux users. This will take time, but I think it will happen in due course when other big developers other than ID consider Linux. If Valve can release some Linux games and allow users to use Steam on Linux I think it would help pave the way here as Vavle much like ID are not constrained as much to the bounds set by publishers.

Unknown said...

linux will not be 'a better gaming platform' until the average computer user can simply install it and run it without difficulties. I have tried various installs of Ubuntu but continue to use XP. Why is that? Because XP allows me to use my computer instead of spending time trying to figure out how to use Linux. As it stands, the people with the knowledge and the desire to mess around with the OS are not the core gaming audience. as much as you fanboys/gals wish the world was populated with l337 coders, it's not. It's mostly filled with the great unwashed masses who simply want their computers to work. I'm all for free and open source whenever possible, but people aren't going to adopt something en mass when most of them can't figure it out and don't want to spend the time hassling with it in the first place. If linux ever becomes simplified to the point that your wallmart computer buyer can use it, yall will have moved onto something else anyway.

Phil Hall said...

In order to turn Linux into a true gaming competitor to Windows, there would need to be a standard package that would install on all distro versions (and copy-cats) that would essentially be the Linux version of DX10...sound, vid, 3D, etc. Pretty hard to get all the Linux-gurus to agree on anything as it is, add in gaming (something they like but aren't going to go all out just to support) and things are much harder. It would be possible to make a whole new distro based on very specific hardware to be just a gaming platform, but in the end it would be lost in the noise of the rest--and then you'd still see the Linux purists throwng a hissyfit about it not supporting some obscure thing that it "really ought to"...

Could Linux be a better gaming solution? Yes. Will it ever become one? Probably not. Sadly.

Stephen said...

Everyone here seems to be talking about how Linux "could be" a gaming OS, and it has "potential" to be a better platform for games, etc., but I've been using Linux as my sole OS for about 3 years now, I don't own a console, and I am still an avid gamer. Explain that one to me.

Oh, and I've posted a little about my experiences with linux gaming on my new blog, on http://tuxrant.blogspot.com

tgirod said...

as an answer to some comments on Xorg and DRI, I would like to point out an alternative : the framebuffer.

For those not familiar, the framebuffer is (roughly) a kernel-level abstraction exposing graphical ressources to userland applications. Basically it allows you to display things by accessing the hardware directly through the kernel, rather than passing through Xorg and its DRI architecture.

The problem is that the framebuffer in its present shape doesn't give you access to hardware acceleration, the GC offers.

However, a guy is developping DirectFB, a library that allows you to do some 2D and 3D hardware accelerated graphics running only with the framebuffer.

What I hope to see is massive developpement in graphic drivers at the kernel level (and with ATI/AMD releasing the technical specs of their GC, it's already happening). Then, through projects like DirectFB, we could achieve tremendous graphic performances by running the game solely on top of the kernel + core apps.

Creative said...

the answer is simple: yes, linux could be better for gaming, but there's a money interest here!

praxis22 said...

OSX 10.5 is a fully posix certified UNIX system under the hood. It's effectively running a modified X windows system, using a composting desktop manager. I think it's called quartzwm, but I'd have to check.

Games run on OSX. The Sims2, Call of Duty, WOW, etc. They do this on top of A UNIX system, and without DirectX.

OSX is UNIX, but the average user does not know this, or even care. Almost every Mac book you can find shows you the GUI. Even the Admin books by Apple do the same.

The issue is not whether UNIX/Linux is better, it's whether there is any support for the platform. Doubtless many people will say, "yes, but OSX only runs on Apple hardware, and it's expensive." You would be wrong about that too.

http://www.osx86project.org/
http://www.efi-x.com/

notoriousxl said...

You can also quit IceWM, exiting X and launching games (or any other app) with xinit! ;-)

NoGoodPerson said...

I believe in using the right tool for the right job, PC for games, Macs for arty farty stuff and linux for your nerds and network guys. Only reason I stick with Windows is because it's something I'm used to and because 99% of the games out there simply won't run on linux. Why should I spend 4 hours fiddling around trying to get something to work when windows does the job, however inefficiently you die hard linux people think. Linux may be free, buy when it comes to time setting up and hassle involved it becomes very expensive especially when that camera/scanner/funky device you spent $300 on no longer works.

m said...

...Linux won't be a better gaming platform until it's as easy to install as Windows....

Having installed many Windows machines and many Linux machines I can say that it already is. And that's not the out of touch opinion of som 1337 coder, I work in tech support and have a pretty good idea of what an average person can do.

First off, I'm assuming a Linux distro that is made for new users, not a compile it yourself super custom setup.

Second, results vary.

Some computers have hardware that most easy distros will just pick up and run, no questions ask. It just works. Others require significant tweaking and editing of config files.

But... I could say exactly the same thing about Windows. True, hardware which just doesn't work at all in Windows is fairly uncommon but there are still plenty that don't really work well in Vista, or require lots of googling for drivers, etc... It all depends what hardware you have!

However, if you buy a new PC, it probably was put together with Windows in mind, and Windows is already on it. Nothing to do. That... would be a more valid point.

Also, as I said MOST hardware is supported quite well in Linux but, that which isn't tends to be the nice 3D graphics cards, exactly what a gamer needs.

In the later days of 3dfx Linux gaming looked like it was about to take off, major labels started shipping native Linux versions. Then suddenly, almost all at once... 3dfx was gone and video card vendors stopped releasing the information necessary for the community to create good full-featured drivers.

Without the drivers people couldn't play the games anyway, so why write Linux versions. So those went away too.

Another real issue that Linux has w/ gaming... Games are usually commercial, closed source software. Closed source software is always problematic in Linux b/c there are so many not-quite compatible versions of the system libraries. Sure, the same code may compile and run on most machines without difficulty but getting a closed source binary file to run.... that can be a challenge. And then what happens when you are feeling a little nostalgic and want to play an old game? Try running Quake2, the native Linux version on a modern distro. It takes quite a bit of prodding to get it to run b/c it was compiled for the libraries of the time.

Kaarlo Mäkelä said...

How bout games on LIVE DVDS! And saves would go to the internets.

They could strip everything not needed, and include just everything that is needed.

And I'd be happy if they just supported one OS, like Ubuntu, some hacker would port it to other linuxes too...

Gedece said...

Of course there is a serious oportunity for Linux here. Microsoft made a big mistake, in their efforts to make everybody purchase Vista, they made DX10 Vista exclusive.

Gamers that want performance above all else now need to a) forfeit DX10 or b) give up performance and install Vista. There's clearly a conflict of interest here. Even more, if they go for Vista, they loose DirectSound, so making older games work with 5.1 setups can be extremely painful

So, if Tenebrae, Ogre, OpenGL, Sdl or any other actor has some possibilities, the time to act is now, as AAA games take years to develop and in years there will be a newer windows that might solve this issues or affordable computers with enough power to run three Vistas in parallel processing.

So, now is the time to make a stand.

Anonymous said...

It warrants mention that the lion's share of games run on Consoles and consoles employ OpenGL almost exclusively. And OpenGL is far from being 'vastly behind' DirectX 10; while DirectX 10 offers some Developer pipeline advantages like tools and clever render features -- virtually all of these are closed source, poorly optimized, and offer virtually no aesthetic or performance improvement for the mainstream of gaming PC, and very little on state-of-the-art high end systems (that occupy less then a fraction of a percent of Gamer market share).

Linux does have it's foibles, but all are well known and easily remedied at marginal cost as the Operating system is Open Source, and there is a massive investment in OpenGL that surpasses DirectX by orders of magnitude. Commercial exploitation of Linux for the gaming market at even a small fraction of a percent that Windows receives in the right gaming niche would move Linux improvements along as a Workstation and 'Game Rig' OS much more rapidly as opportunity cost becomes more readily apparent...

Commercial recognition of Linux as a Workstation and 'Game Rig' OS offer all the advantages discussed in the title Blog and comments, and many of the shortcomings discussed could actually be realized as opportunities: Linux kernel auto-compile tools that identify hardware and build a custom high performance kernels for the user, custom game and hardware specific distributions of the OS would cost little more then the current cost driver and render back-plane development as the OS is free and Open Source...

=O)

MattBD said...

Kaarlo, I really like your idea in particular - games sold as bootable live DVD's are one way of bypassing the OS completely. And with Blu-Ray now available, then once this becomes standard there will be more than enough room for pretty much any game. Another way you could potentially do the same thing might be using a bootable USB flash drive - the capacity of flash memory is improving all the time, although at the moment I think it might be prohibitively expensive for big games. However, it does have the downside for both of these that you'd have to include all the drivers on the disc or flash drive, which does cut down on the space you've got.
Another way that it could be done is using virtual machines - you could have different virtual machines available for different OS's, then use them to run the same games, similar to how things like Adobe AIR or Java work. However, I'm sure this wouldn't get the best out of hardware and you'd have the additional overhead of running the VM.

JP said...

I actually made this as a prediction of sorts in a post on my site last year.

read it here on gamerslastwill.com

Unknown said...

Here's my take on Linux gaming...

http://www.revzalotmotorsports.com/blog.html?blogentryid=3313317

Dread Knight said...

I enjoy gaming on my linux (kubuntu) box.

Anonymous said...

Actually, there are already a few Linux distros specifically for gaming:

http://supergamer.org/
http://live.linux-gamers.net

Both of these are liveDVDs.

blackbelt_jones said...

I used to dual-boot Suse10.2 and Windows XP on a 3.0 ghz P4 with a gig of RAM and an Nvidia Geforce card. I was told that nVidia was the way to go with Linux.

With the proprietary nVidia drivers installed, the best test I can think of would be to run the exact same game on both platforms. I would play Second Life on both. There was certain internal media that the Linux system didn't support (I couldn't watch movies inside of Second Life...) but in overall 3D performance, with the same game, on the same hardware, Linux was unquestionably faster with better resolution. The difference was subtle, but unambiguous. But you need to get a video card with a proprietary Linux driver available.

All this stuff about the average joe, and things "just working" (cause we all that Vista is sooooooooo reliable) is all well and good. We all know that there are real-world support issues with Linux. But are we talking about average joes, or we talking about aficianados who want the best perfomance?

valadil said...

The problem is that you can't have a modern game that straight up supports linux. It needs to support a number of distros as well. You're fooling yourself if you think supporting a redhat installation is the same as ubuntu.


That's completely untrue. Much too much is made of the different distros. That's not a support issue at all.

nVidia has one driver for Linux for each line of graphics cards, and it works on every distro, because whatever else you put in a Linux distro, it's always basically the same kernel, and the kernel is where the driver meets the operating system.

The differences between distros insofar as software is concerned usually has to do with packaging systems. So it's like the same software in a different package. It's hardly an insurmountable thing. If the market is ever there, vendors will come up with the packaging. Some allready do.

Others create a shell script installer, which is a little less convenient, but it works with just about any distro. anyone with an IQ over 85 ought to be able to handle it. And now some distros are making deals to distribute the drivers themselves, and convert it to the native packaging system. Ubuntu uses apt to make getting the nVidia driver complete automatic

Anonymous said...

Travis - Pretty much everything you said in your post is wrong. First of all, there ARE linux native games, do a quick google search. Second of all, you seem to totally misunderstand how open source works. Yes there are differences between the various distros, but no, they are not so great as to prevent software written for one distro to work on another.

Seriously, your post is so misinformed that it boggles the mind.

Unknown said...

Guys, GAMES are an entertainment sector of computing. Linux is just now only entering in to the Desktop with a whopping .9% market share. (Thats POINT 9 Percent not 9 percent... so less than 1 percent )

SUSE and REDHAT are just now starting to convince Enterprise ( corporations ) to install Linux Desktops ( SUSE or UBUNTU ) on tens of thousands of Enterprise machines. This is all about BUSINESS so they can use accounting, word processing and spread sheet and presentation software for BUSINESS )

Next, comes the HOME USER, which is Windows XP and Vista 90% market share... again Linux is JUST NOW only starting to pentrate the home user...

ONLY WHEN the home user market has a 10+ % market share, will game programmers concider Linux as a worth while marketing platform to write games on to sell.

Also, concider that nVidia ( GeFORce CARDS ) WILL NOT release their video drivers as open source... this is another barrier. Although AMD, ATI and Intel HAVE open sources ( Open Speced ) their hardware and so we have Open Source Drivers for those businesses.

Until, Linux gets more Desktop Market share, you can kiss gaming good bye...

Although there are companies like Transgaming that port windows games to linux like EVE - ONLINE and others, but they are buggy.

But, just give it time... linux is making HUGE strides every year, year after year... thanks to Ubuntu and Debian to more align things and main stream.

If you want my prediction, another 5-10 years and Ubuntu + Linux + SuSE and others ( like redhat ) will first penetrate the Enterprise (Corporations) THAN the Home User... finally maybe openGL will become more actively developed again and nVidia will open their driver code up so as to support the Linux Gaming Industry.

First things first... business (Enterprise) than games (Home users)

Silakka said...

Only problem I face daily is Linux library "hell".
Library versions change too fast and distros using different naming.
Maybe in future ..

ris said...

Comparing OpenGL to DirectX is not a fair or accurate comparison. Comparing SDL to DirectX and/or Direct3D to OpenGL might be what you are looking for.

Robert Osfield said...

Linux is great platform of games - it's file system, multi-processor support and better memory management all exceed what Windows can provide. This is why the vis-sim industry is flocking to Linux, the games industry really doesn't have any more challenging demands.

For me Linux can solve the OS/API proliferation problem. One problem we have right now is that we XP, Vista, OSX 10.x variants, and dozens of Linux distros all working on exactly the same hardware. Games companies rather than supporting a particular set of hardware, end up supporting a particular OS on a particular set of hardware - it's a smaller set of potential customers. If you want to widen your appeal and support OSX and Linux then it's far more developer effort. It's madness as it's all the same hardware under the hood.

A live CD/ bootable usb disk could easily run on across the vast majority of modern x86 machine, could strip the OS just down to its bare essentials and have plenty of room for game software and media. Such as package would control everything about the libraries installed and could be tailored to the games needs. The PC hardware would then morph into a console.

This is all technically possible right now. It just needs a vendor to step up and provide the Linux foundation for rolling these game centric live CD's/bootable usb disk, and games companies to embrace it. It's far more of a marketing challenge than a technical one.

Bryn said...

Sorry, never gonna happen. Linux simply cannot compete in the consumer space. It's far too complex and far to fractured to ever be able to compete with the generic windows platform.

As far as the average Joe is concerned Windows is better than linux. Now a linux fanboy can present arguments to counter this till he/she is blue in the face, but the simple fact is, in the consumers mind, Windows is better than Linux.

I mean, when you get down to it, what exactly does linux offer that windows doesn't?

BC87 said...

The various linux distros makes me not want to game on those distros.

I do not have the knowledge to configure it :(


I'm only sticking with windows because it is easy for me to use. It's annoying sometimes but I can play games for hours on it.

Harlan W. Olsen said...

Everyone keeps saying that end-users can't configure and install linux. That's just crazy. I don't think then that they could configure or install windows. I know on my machine ( asus a8n-32sli deluxe and 2 en7900gtx nvidia cards) windows install misses a whole block of stuff. Sound , Video, ethernet, etc, but when I install ubuntu it finds EVERYTHING. Even my tv capture card works right away. I go to add/remove in ubuntu and searched "tv" bam I had like 4 tv viewer programs. I picked tv time and it instantly worked. I think maybe you people need to retry installing linux. I know ubuntu install is easier than windows. In fact I can surf the web and chat WHILE I am installing. I think maybe you are just sheep in the MS field.

Unknown said...

Linux will not be a viable gaming platform until idiot individuals stop thinking that because they had a problem installing a distro that everyone else has one too. There are MANY Linux users that have simply popped in the CD, installed and done the same amount of post-installation work on their system as it takes to get XP or Vista up. So please save that average joe crap because I doubt you could get ANY OS working.

Now as for the real reason Linux isn't a viable gaming platform...it doesn't have the market share. Most game companies simply don't feel a need to hire the people with expertise to build a Linux branch of the code yet. Now what the community could do to alleviate this is develop tools that make it ULTRA simple to take one code base with minimal changes and compile to a Linux target. However MS has already headed this option off at the pass. If I'm not mistaken DX10 is going to start allowing games to be coded in managed code (C# .net) and if that catches on then Mono would be the only answer for Linux. Besides the fact that Mono may introduce legal problems for Linux it is severely behind .Net. Mono only supports .Net 1.1 if I'm not mistaken and MS is on .Net 3.5.

Performance really isn't even a player in this discussion at this point. Thats unless game makers and hardware makers such as Asus come together and want to offer game-in-a-box type console/PC/laptop hybrids.

blackbelt_jones said...

Blogger ADINSX said...

Eugenia is right, DRI in X is very poorly designed. So poorly designed, in fact, that the proprietary nVidia drivers bypass it completely (from my understanding).


But that must mean that the DRI can be bypassed. So eugenia must be wrong, because her position was that it was an insurmountable problem ("Sorry, it won't happen")

If you want good 3D for Linux get an nVidia card and install the propietary driver (ubuntu makes it fairly easy.) There may be other ways to go, but I'm not aware of them.

I'm not much of a gamer myself. Linux fanboy that I am, I have to acknowledge that the realities of the present market environment makes Linux de facto insufficent for serious gaming, and I always tell people that. There are good valid reasons why some users choose to run Windows, and gaming is on the top of the list. But, as with so much else, it's market forces that are holding Linux back. The point of the article is that the technology is in place, if the market ever decides to take a turn.

praxis22 said...

Bryn,

Linux can compete, my mother uses it, and I've just installed it on my wife's laptop too. Unlike Windows it doesn't take 5 hours to install patch, and tweak. It takes about 20-30 mins to install from scratch and maybe 10 to fully update all the available patches.

The only thing you really have to do to make it usable is install flash. Same as you'd have to do in windows. Only you can do it without even opening a browser.

Ubuntu Linux is far from fractured, it presents a remarkably consistent look and feel regardless of platform. It releases a new version every six months, and stable "long term support" versions ever two years. The current version 8.04 is an LTS release. It's stable, secure, and choc full of cutting edge projects, which make it look fantastic.

As to your second argument, in as much as "the average joe" is even aware that there are alternatives you may be right. In my experience, most people think that windows is the computer/internet, so they never look for anything else. It's not a matter of "better" it's a monoculture.

I chose to approach the problem with stealth. I first got my parents used to using firefox, thunderbird and open office on XP. Then I migrated them to Ubuntu, showed them where the applications were and that was it. The only thing they explicitly asked for was picasa. Which google makes available for free.

If you show people that there is an alternative, what it's advantages are and that they lose nothing. They're more than willing to try it. If you show them the eye candy that is compiz/fusion they usually jump at it.

What does Linux offer? Better performance on older hardware, a small memory footprint. Increased security, (if only because it's not windows and doesn't run ActiveX) a vibrant and helpful community, the sense that you're actually learning something, and the security of knowing that it's easy and quick to recover from even the most difficult crash. Simply backup your home folder to a USB stick, re-install and in 30 mins you have a working machine setup as it was once you replace your home folder.

I setup an automated backup of my parents entire machine, dumps the lot out to a USB drive. Made it so it would happen automatically if the drive was plugged in or they could trigger it manually. It looks after backup ageing etc. on it's own.

Admittedly I know what I'm doing, and it is best to have somebody know what they're doing install the machine first time, etc. But then I'd wager than the average joe couldn't re-install windows either. I've known people trash windows and then go out and buy a new computer by way of a fix.

If you're set on using windows, don't let us stop you, you're welcome to Vista, I don't touch it.

blackbelt_jones said...
This comment has been removed by the author.
blackbelt_jones said...

Yeah, it's tough for Linux on Planet Microsoft. I just read a blog post where a guy was complaining about all the work required to bring Linux up to "Windows Parity". I think that says it all. No matter what Linux can do or can't do, there is one thing Windows will always do a better job of, and that's being Windows. Try to run Linux as if it were Windows, and you won't be impressed.

That's why I'm starting to be convinced that even though you don't technically need to use the cli to run Linux anymore, if you're not willing to familiarize yourself with just a little bit of the CLI, you might as well not bother, you're going to lose interest and go back to Windows eventually. You can run Linux as if it were Windows, and it'll be okay, but it'll always be second best.

Anonymous said...
This comment has been removed by the author.
Anonymous said...

Hey..
Your blog is exactly perfect..

If you're interested,check mine..

Invitation to death: Dangerous roads

MattBD said...

blackbelt_jones, I'm inclined to agree. It's one of those things - people see what they are used to as "user friendly" and anything else as "unintuitive".
Also, people do get hung up on particular programs, so there's plenty of people who won't switch because there's no iTunes, for instance, when Amarok or Rhythmbox is more than sufficient for their needs (and IMHO, Amarok is actually a lot better than iTunes).

blackbelt_jones said...

I'm using Fluxbox to manage mostly KDE applications in Ubuntu. I directely edited my menu and created every item myself. I created every keyboard shortcut myself, and I created a system to organize my shortcuts so that I could remember lots of them. Nothing is more user-friendly than a custom keybinding... the interface seems to disappear, and you can reduce anything to a single modified keystroke. And there is nothing more intuitive than a menu you create yourself.

But the basis for programming your gui is shell commands, even though they are usually really really simple shell commands, e.g.

firefox http://www.blogger.com

Think you can figure this out? I bet you can.

People think it's still the 1980s, when the command line was a big black screen that you had to do everything with. Back then the command line and the gui were seen as competitors, but now they support each other. It's not about one tool being better than another, it's about two tools being better than one.

Anonymous said...

I think games would run better on GNU/Linux if the producers of all these gpu's floating around would release the full specification of their hardware products, and release their drivers as free software.

Both ati and nvidia have done a terrible job in regards to GNU/Linux drivers for their video cards. Nvidia has done a better job than ati, but it's still not very good. If they were to release the source code of their drivers, and also release the full specification of their video cards, members of the public would be able to look at these and offer improvements to ati or nvidia. I mean, ati/nvidia offer their drivers gratis anyway, so they might aswell also release the source code.

While keeping their drivers proprietary and their hardware specifications secret will prevent (or at least make it much harder for) people to make clones of their hardware, at the same time it not only hurts the users but it also puts ati/nvidia themselves at a disadvantage.

Unknown said...

Ryuga:

Have you not kept up with the Nvidia and AMD/ATI drivers for the past two years? AMD has far surpassed Nvidia's Linux/open source support. They have been releasing tons of documentation on their hardware for open source developers for well over a year now, and their proprietary drivers seem to be better than Nvidia's too now.

Get yourself up to date, AMD is the number one choice of Linux gamers now...not Nvidia.

Soaring9Dragon said...

I agree that a distro designed for gamers can bring more people to linux. Opensource I appreciate however I also appreciate graphics I perceive intensive. The card manufacturers can create a distro designed around that particular brand. It would boost sales and usher people who like to game into opensource.