Does Linux Have Game? 729
kwpulliam writes "Tom's Hardware has an interesting writeup, discussing the difficulties in bringing games to Linux, and the dilemmas faced by the graphics card developers."
It is clear that the individual who persecutes a man, his brother, because he is not of the same opinion, is a monster. - Voltaire
Direct3D on Linux? (Score:5, Interesting)
Re:Direct3D on Linux? (Score:5, Informative)
Well, with Cedega [transgaming.com] (formerly WineX), they basically have...
Still, with porting to OpenGL, you get the benefit of not having to use a runtime Direct3D-to-OpenGL translator (which is essentially what Wine/WineX/Cedega uses), and you're also a step closer to the OpenGL-only Mac.
Re:Direct3D on Linux? (Score:3, Interesting)
I've used Crossover to great effect to run Office 2000. As long as you stick with what they s
Re:Direct3D on Linux? (Score:3, Informative)
Re:Direct3D on Linux? (Score:3, Informative)
That said, the reviews I've read about Doom3 on Linux say its performance is not as good as on Windows.
Re:!Windows Emulator, Wine Is Not an Emulator. (Score:4, Insightful)
Copied directly from http://www.winehq.com/site/docs/wine-faq/index#IS
Wine can call itself anything it wants, but the fact remains that Wine does the following [winehq.com]:
If you intend on using the ROM for a console game (such example consoles are the NES, SNES, Genesis, Playstation, Gamboy, and so on), you use a program loader which loads and executes a ROM, and a set of libraries that implements the console API calls using their UNIX or X11 or Windows or Linux or DOS or Nokia equivalents.
In that situation, you are using an emulator. How does this differ when you're trying to run a Windows application?
Just because the people maintaining Wine say it's not an emulator, does not mean this is true. In fact, if you go back a few years, to say, 1998, you will clearly see that WINE stood for WINdows Emulator [faqs.org]. Why? Because that's what it is.
Also, before you go and try and say that WINE used to stand for WINdows Emulator, and they later changed it because the program changed, let me quote the section from the WINdows Emulator FAQ which describes what WINE is:
Yes, with the exception of the addition of 5 words ("... operating systems such as Linux"), it's verbatim.
Re:Direct3D on Linux? (Score:5, Informative)
3D Hardware Accelerator Card Required - 100% DirectX® 9.0b compatible 64MB Hardware Accelerated video card and the latest drivers*.
English version of Microsoft® Windows® 2000/XP
Pentium® IV 1.5 GHz or Athlon® XP 1500+ processor or higher
384MB RAM
8x Speed CD-ROM drive (1200KB/sec sustained transfer rate) and latest drivers
2.2GB of uncompressed free hard disk space (plus 400MB for Windows® swap file)
100% DirectX® 9.0b compatible 16-bit sound card and latest drivers
100% Windows® 2000/XP compatible mouse, keyboard and latest drivers
DirectX® 9.0b (included)
Linux:
GNU/Linux system,
Pentium III, 1Ghz
256Mb RAM
Kernel 2.4, 2.6 is recommended
glibc 2.2.4 and up
3D card:
NV10 or R200 minimum hardware
OpenGL hardware acceleration
64 MB VRAM
sound card, OSS or Alsa, stereo sound and 5.1 are supported with both APIs
Alsa version 1.0.6 or above is required
I got both of these from the respective download sites. The only difference being the Linux version is the demo release, which should cause minimal concern since they are going by how well the engine itself runs on the platform.
My system is an AMD XP2100+ 512MB & ATI9700Pro @ 4x AGP. The Windows version runs great, the Linux version runs so-so. It is playable, but not much fun. I think this has more to do with needing to upgrade to something in the FX53 range than being any blame of ethier operating system.
Let's face it, performance isn't nearly as much of an issue as developer support at this point.
Re:Direct3D on Linux? (Score:4, Insightful)
Re:Direct3D on Linux? (Score:5, Insightful)
I've seen benchmarks for Doom 3 on Linux that show a 5900 beating an ATi x800XT..... there is NO WAY that should happen!
If you play games in Linux, Nvidia is the only option right now IMHO. I switched from ATi to Nvidia for this reason and I've never looked back.
Re:Direct3D on Linux? (Score:3, Insightful)
You should also point out whether or not you used the command line switches to actually enable the smp support in the game engine. I think it is off by default and really doesn't do much for performance when on.
I am suprised you guys are getting such results with Linux performing better. Even the project homepage disagrees with this result, as do my personal experiences
Re:Direct3D on Linux? (Score:3, Interesting)
Does anybody have any experience with running HL2 on linux? How does it fare against the Win version on same hardware?
I haven't tried it yet. But I did read a review that claimed it was quite good. The reviewer had some trouble at first, but after a bit of tweaking said it worked perfectly, albeit at a very few frames/sec slower than it ran on Windows. My guess is that even that will ultimately be fixed; I basically quit gaming a couple years back, but I used to have a dual-booting box that ran counterst
Re:Direct3D on Linux? (Score:5, Interesting)
Re:Direct3D on Linux? (Score:5, Interesting)
Nope. I'm a linux user, and an avid gamer (ut2000/2003/2004, q3a, RtCW, doom3 etc), but I don't dual boot, and don't even have a windowspeecee among my half dozen computers. I do pull out the wallet and buy linux games. So, a linux version is most definitely going to yield additional buyers, and I seriously doubt I'm the only one who runs linux 24/7...
Why ruin my uptime just for a game? If there's no linux version of a game, I don't buy the game, end of story. There's already more native linux games available than I can ever hope to find time to play, so if having fewer titles available for linux than for ms windows is my biggest problem, life is good.
Re:Direct3D on Linux? (Score:5, Insightful)
But #1. Many people I encounter who do run strictly Linux on their PCs do so because of a lack of funds. These are the guys who like Linux because they're still able to eeek some life out of their old Pentium 1's and even the old 486DX that they turned into a print server box. They're not exactly a "prime market" for selling commercial games!
#2. Why ruin uptime for a game? Well, in return, I feel like I need to ask you why the "uptime" is an issue in the first place? In the majority of scenarios I can imagine where one is concerned about uptime between reboots, it has to do with that PC running a fairly critical server-type function that's a hassle or major problem to interrupt. I don't think it's really wise to fire up video games on such a system. If it's really just a home workstation, dual-booting into Windows when you want to play a Windows-only game doesn't seem like such a huge deal?
That said though, glad to hear you're buying only the games with Linux support... That's really the only way anyone will keep bothering to make Linux versions of commerical games. I do the same with my Mac, actually. I own a PC with Win XP on it too, but I'd rather put my limited funds towards the people writing for my Mac - because my dollar counts a lot more in a niche market.
Re:Direct3D on Linux? (Score:4, Interesting)
The Mac user base is used to paying for software. It is a definable market with a predictable return. How many of those Linux desktops you described were ready for gaming? Not the ones sold off Walmart.com, surely.
Re:Direct3D on Linux? (Score:3, Insightful)
Re:"DirectSound" equivalent is already on Linux (Score:3, Informative)
Doom3 does not use openal, and DOES use alsa, and I get 6 speaker positional sound out of it without any problems. Sounds great too
That said, for openal-based games, there's already a fast hardware-accelerated emu10k1-based implementation of openal at http://www.lost.org.uk/openal.html [lost.org.uk]
it's been a bit quiet recently, development-wise, but it works nicely with ut2004, and supports everything but earphones at the moment. According to my friends it's also given them a noticable FPS bo
Re:Direct3D on Linux? (Score:5, Insightful)
FPS games tend to get ported because developers/publishers see the value of having user-run Linux servers, and it's easier (although by no means guaranteed) to get a client port from a dev team that's already porting the server code.
Re:Direct3D on Linux? (Score:4, Informative)
It's really not all that difficult if you use something like wxWidgets [wxwidgets.org] (formerly wxWindows). Slashdot has covered [slashdot.org] the MFC and wxWidgets comparison before. If your interested, IBM has written an article on Porting MFC applications to Linux [ibm.com]. Just let it be known, it is something being done. I've personally converted applications directly from MFC to wxWidgets with very little difficulty and really very little code change. However, none of the apps had non-standard interfaces.
MFC is history anyway. Just something to think about.
Re:Direct3D on Linux? (Score:3, Informative)
Yep. D3D and OpenGL both do more or less the same thing...
Not quite. D3D is a much fuller-featured development framework, rather than just a graphics description language. More like OpenGL+SDL.
Re:Direct3D on Linux? (Score:5, Informative)
Direct3D is exactly like OpenGL. You can argue features (vertex shaders integral or an add-on, etc.), but they are both graphics APIs.
Your point is valid, but you are thinking of DirectX. DirectX contains Direct3D (graphics), DirectSound (um... sound ;), DirectInput (keyboard, mouse, joystick, whatever), DirectPlay (or at least it used to, networking code), and others (I think).
So your right. I doubt many games use just Direct3D. If you are going to use D3D, why not use DirectSound and DirectInput too? They are much better than just programming Win32 for that stuff (I would imagine). Even Quake2/3 used DirectX for everything but graphics (I think).
As the parrent said, there is more to the problem than just Direct3D, there is all of DirectX (which WineX/Cedega/whatever is working on alongside D3D). If more games were written with OpenGL+SDL (or any other cross platform combination that may exist) things would be easier to port.
Re:Direct3D on Linux? (Score:5, Insightful)
Why don't more games use OpenGL+OpenAL+SDL? It's cross platform, it works, and it's easy to learn and program with. Why do so many people jump on the Microsoft bandwagon, when it isn't even always the better choice?
Re:Direct3D on Linux? (Score:3, Insightful)
Get your facts straight before posting... (Score:3, Informative)
What you're referring to is DirectX which is the framework comprising:
DirectPlay (networking), DirectInput (keyboard/mouse/joysticks), DirectSound (sound (duh...)), and DirectGraphics (2D rendering).
In each of these there's an analogous or similar platform under Linux and MacOS (which, amazingly enough, are the same things...).
Re:Direct3D on Linux? (Score:4, Interesting)
Re:Direct3D on Linux? (Score:5, Interesting)
I don't think so. It's been almost 2 years since DirectX is available for MacOS, developed by British company Coderus [coderus.com]. So far, no major breakthrough was achieved this way - main Macintosh game ports are done "the hard way" by companies like Aspyr Media [aspyr.com], that's why it takes so long. Only a handful of Mac ports actually use MacDX. It's probably because when you move a game from Windows to Unix-ish environment, you still have to change so many things (Unix privileges etc.) that the 3D API is only a fraction of it.
Re:Direct3D on Linux? (Score:3, Insightful)
Simply write games using only OpenGL. This allows maximum compatibility across any platform... hence the "Open" part of "OpenGL".
Another poster made the point that it shouldn't be technically much different to write for a UNIX machine or a Windows machine, as the two have much more in common than, say, Windows and a PS2.
If you believe the rumors, the PlayStation 3 is going to alleviate some of the PlayStation 2's notoriously difficult learning curve by using OpenGL as the graphics langua
Re:Direct3D on Linux? (Score:5, Interesting)
Take a look at what Apple did with OpenGL and Aqua. Perhaps they should adopt the it like they did BSD and give it a similar overhaul, providing source and giving back to the community. That way, not only Linux gaming but Mac gaming could seriously improve.
MS is using their OS and browser monopoly to create their own standards and maintain control. They're doing it with ActiveX and their poor CSS support in IE, and they're doing it with DX9 by getting hardware designers the make their graphics cards specifically for their API. Something's got to stop them, and porting DX to Linux (which would never happen anyway) is not the solution.
Re:Direct3D on Linux? (Score:3, Informative)
Re:Direct3D on Linux? (Score:3, Informative)
In D3D you need to check caps bits for feature, OpenGL you need to check if the extension is supported, seems about the same to me.
I don't understand your comment about OpenGL being Stateful, D3D also stores its own internal state and it maybe more than one copy, one for the DX runtime and another in the driver proper.
About the extensions, nothing stops a Radeon (or anyone else) implementing the NVidia extension (which I think they do). OpenGL allows you just to call the new features (if supported). I
Re:Direct3D on Linux? (Score:3, Informative)
Statefulness: For example, functions that operate on a texture of a certain stage in the multitexturing pipeline operate on the *current* one, whichever that may be. So you have to set the current texture stage of the API, do all your state changes, move to the next stage, etc. The changing of the current stage only affects the state of the API, it
Re:Direct3D on Linux? (Score:3, Informative)
The trouble with them is, because they store state information and such, they tend to be very bad for multi-pass operations, as you pretty much have to keep multiple copies of the same geometry around. I've already got more geometry than I'd like to have, so storing distinct copies of it for cel shading and shadowing/lighting is just not an option.
~phil
Re:Direct3D on Linux? (Score:3, Informative)
OpenGL is stateful because 3D hardware is, and OpenGL always tried to be a thin layer on top of the hardware. Unfortunately, as you've noticed, state leakage becomes a real problem as soon as you start trying to build anything beyond a single static scene. It's just too much b
Re:Direct3D on Linux? (Score:3, Informative)
~phil
Re:Direct3D on Linux? (Score:5, Interesting)
Re:Direct3D on Linux? (Score:4, Informative)
Why can't someone port the Direct3D API to Linux? This would save a lot of hassle of porting the games to OpenGL.
It's not so much that no one can...just that it's way too much trouble for the benefits you'd get. Specifically, D3D relies heavily on a lot of the rest of the Win32 API. If you want D3D, you'll need either a Win32 API, or to rewrite all those calls. This makes sense in the context of wine, which is why cedega/winex have basically done all this. Not perfectly, mind you...but this is their goal.
Of course, you can add to this the fact that Linux already has perfectly good API's for this sort of thing in the form of OpenGL and SDL. And the fact that Microsoft has kept D3D a moving target.
And finally, there's the fact that porting D3D wouldn't necessarily solve all the problems; presumably, games that use D3D also make a bunch of other Win32 system calls. So, you're back to needing both D3D and Win32.
In other words, you might as well have said, "why doesn't somebody just port Windows to Linux so we can forget about all this bullshit?"
Re:Need Game Boxes and Mac to Run Linux (Score:3)
Wether Apple uses Linux or BSD as basis for their OS really does not matter at all. For developer they are virtually identical, and there is extremely little effort involved in porting between the 2 (I have done it myself for quite a few programs)
The real issue is Apple using its own gui with it
Re:Need Game Boxes and Mac to Run Linux (Score:3, Informative)
Sure. (Score:5, Funny)
Stop making excuses (Score:4, Insightful)
Re:Stop making excuses (Score:5, Insightful)
~phil
Re:Stop making excuses (Score:3, Insightful)
Big releases (Score:5, Interesting)
Re:Big releases (Score:5, Interesting)
Re:Big releases (Score:5, Insightful)
home desktop (Score:3, Funny)
ATI video drivers (Score:5, Informative)
For productivity, I'm using OpenOffice, FireFox and Thunderbird amongst other open source applications. For games, I play Savage (http://www.s2games.com) which has a native Linux binary. I also play some other games like BattleField 1942 and Vietnam that run under Linux through an emulator.
The rate limiting step here is the ATI video drivers. It's the only thing keeping me running Windows XP instead of Linux.
Re:ATI video drivers (Score:4, Interesting)
Amen to that. ATI, give us a usable binary driver, or give the community the specs!
At this time, my recommendation to those who want 3d gaming is either:
I got bit hard by that when I got my laptop; I dropped the money for an ATI card, thinking the only problem was that they were a bit slower than the nvidia drivers. After kernel horkage and lockups and filesystem damage due to this driver, I've sworn off ati unless it's an old, well-supported card. I shoulda just given my money to NVidia instead. From what I've been reading, ATI is very ambivalent about making good Linux drivers, whereas NVidia seems to be bending over backwards to give us great support.
Re:ATI video drivers (Score:3, Informative)
While their drivers contain a substantial binary only component, your statement is not entirely true.
The layer of their drivers that interfaces with the kernel has sources available, and with some efford it can be adapted to newer kernels when it br
Re:ATI video drivers (Score:4, Funny)
I read that as "I got a bit hard about that when I got my laptop."
Re:ATI video drivers (Score:3, Insightful)
Yes... (Score:5, Insightful)
Clearly, the most dominant platform on consumer computers is going to have the vast majority of games available.
If Linux was the dominant OS, you'd see plenty of games available.
Simple as that.
Re:Yes... (Score:3, Insightful)
I play Enemy Territory all the time. As well as the UT series and Quake as well. Doom 3 is coming soon. Neverwinter Nights was fun and I can tackle a good number of games using Cedega.
These discussions are always so pointless. As you said, of course windows has the most games. If you want the latest, or even a good selection- you must run windows.
Interestingly enough, the only games I really find more enjoyable on PC vs my PS2 or Xbox are FPS. And those are the ones best supported under
Re:Yes... (Score:5, Funny)
theres lots of great games for the mac... warcraft 3... zork.. break out... super breakout... photoshop...
ET runs well (Score:5, Informative)
Re:ET runs well (Score:4, Informative)
For those of us unfortunate enought to have a 9500 or greater, using DRI is not an option, we have to use ATI's pitful excuse for a driver. My 9600 Pro gets slaughtered by a GF4MX in glxgears , yes I know glxgears is not much of a bench but still..
We're also still waiting for official Xorg support. This was promised by mid-December but that's now been put back until mid-January.
Tried & failed already. (Score:3, Interesting)
Why pay when Linux users use a free OS. Everybody expects their games to be free.
What game companies should do is like linux companies make money: release the game for free but charge for tech support. Of course, when someone figures how to do the MUST-HAVE exclusively on Linux then things will change... not likely.
Re:Tried & failed already. (Score:3, Interesting)
I don't think the argument of Linux users wanting everything for free holds, either. Cedega seem to be doing quite well. DooM 3 suddenly sold out on amazon.co.uk the day the Linux binary was posted on the web.
Games must be treated as entertainment, NOT software.
Re:Tried & failed already. (Score:5, Informative)
Loki closed almost four years ago. The market today is significantly different then it was then. Linux is used significantly more, on the server and the desktop. Id say with ALSA, and Winelib, the effort required to do source code porting today would be significantly less then it was back when Loki was alive. Also with broadband connections being far more popular as well, a modern Loki could sell direct to users.
So a modern Loki would have more customers. The porting would be easier - cheaper. And they would have higher margins if doing direct-download sales. The economics are compleatly different.
Re:Tried & failed already. (Score:5, Insightful)
Yeah, I can see how ONE company failing is indicative of the whole "linux game company" game. Loki failed, so OMG L00NiX GAM35 R T3H D00M3D!11.
Why pay when Linux users use a free OS. Everybody expects their games to be free.
Yeah, I notice tons of comments on
Re:Tried & failed already. (Score:3, Insightful)
Speak for yourself. I have no problems paying for my games as long as I know that they're games that I will enjoy. Those people who work hard to deliver games should not be told to give it away for free just to comply with the ridiculous notion that "Linux" should always equal "open source" or "free" just because the operating system happens to be free. This is one attitude of the Linux/FOSS community that I simply despise.
It's attitudes like what you state
Re:Tried & failed already. (Score:3, Insightful)
Linux needs to penetrate (Score:5, Interesting)
OpenGL is the Future (Score:5, Interesting)
OpenGL makes Linux, BSD, MacOS X and other ports practical as well as not having to deal with Microsoft's arbitrary API's.
Re:OpenGL is the Future (Score:5, Insightful)
First, I like a standard that updates itself frequently. DirectX does this. In the time that it took for OGL to go from 1.2 to 2.0, DX went from roughly DX6 to DX9. What did you do if you were writing games in OGL during that time? Oh, you wrote ALL OF YOUR CODE TWICE, once for NVidia, and once for ATI, and hopefully you didn't care about other vendors. This is why when you look at Carmack's old
Second, I like a standard that really pays attention to what I (the graphics programmer), has to say. Input is key. When I have a feature request, I notify MS, NVidia, and ATI. I convince each of them why it's a good idea. Generally, it makes it into the next release. Of course, I've tried this with ogl as well.. Not such a simple process. Of course, you can still bring it up with the vendors, but then you also have to bring it up with the standards comittee, and I can't just leave it at that even.
Third, did I mention that I don't want to write my code twice? I really hate doing that. It's bad enough that I have to check caps bits in the first place, and have to do minor if statements to deal with various hardware. But what I really want to avoid is having to write code to several seperate extensions.
OGL may become a powerful force in the (gaming) market in the next few years, time will tell. But it will be largely dependent on how quickly the standards comittee can get off their ass and update. If DX continues to release 2-3 major revs (and countless minor revs) in the same time it takes for OGL to update, then DX will remain the dominant platform to develop for, regardless of the 10% or so linux marketshare lost.
(Incidentally, in terms of 'borrowing' from OGL, that hasn't really been true since Dx8. Since then, OGL has really been trying to play catchup).
Standards that update themselves... (Score:3, Interesting)
It's not really a standard save by Microsoft- everyone else uses OpenGL, even MS offers it. That, my friend is the definition of a standard.
Exactly the problem that a lot of people have (Score:5, Insightful)
Of course, what do these require? DirectX.
And what's the only operating system that truly supports it? Well, it ain't Linux.
All of the other major apps that I use are open source - Firefox, OpenOffice, CDex, etc. I have my trusty Sun Blade 100 up and running right next to me as well. So, I don't need Windows for all of my normal day to day stuff. I can just as easily run Linux or Solaris x86 for everything but gaming. Now that Linux has greatly evolved towards the desktop, the ability to play DirectX games is the last hurdle to getting Windows off of my main systems.
At its core DirectX is just a set of common libraries. Is there no efficient way to convert Windows/DirectX calls to the equivalent Linux calls? We're no longer in the days of having separate VESA drivers for each video card. Surely, there must be some way out there to develop a functional DirectLinuX. Then again, that's why I'm a system admin, not a programmer.
Re:Exactly the problem that a lot of people have (Score:3, Informative)
well, ut2k4 has a native linux version. Believe me, my crack is Diablo 2, and it runs great under cedega (wineX, from transgaming.com). HL2 is well supported (they even released an intermediate version for the sole purpose of working around some steam breakage). It looks like GR is not supported by Transgaming, but works well (the wiki node is a little out of date, though. I don't have it to report directly, thought).
Additionally, transgaming supports popular games pretty well, releasing versions to s
Re:Exactly the problem that a lot of people have (Score:5, Insightful)
Well then you are in luck because I am a programmer and will endeavor to answer your question.
The problem with translation of calls is that there is no binary compatibility between DirectX library calls which use the dynamic link library (dll) and the Linux kernel by which the calls and their returns could be easily redirected. DirectX and its libraries are all compiled into native code and coupled tightly with the windows kernel. Any attempt to reverse engineer this will certainly not be helped along by Microsoft and given the complexity of the DirectX libraries, which include routines for sound, 2D and 3D drawing, feedback devices, and many others, the task would be extremely difficult at best. Past experiences within the computing industry have shown that such linkages, where they occur without the support of the vendors in question, are fragile and extremely prone to breakage if either system changes.
The Java and
The majority of the game development done these days with the exception of Sony and Nintendo console platforms, which use their own proprietary libraries, uses Microsoft DirectX. This adds an additional political dimension to the problem because companies like Microsoft, Sony, and Nintendo are reluctant to make their crown jewels (i.e. their gaming libraries) available for release on compatible commodity hardware.
The short and easy answer to your question is yes, there might be some way to develop a mapping layer to handle method calls and returns. However, the complexity, expense, and reliability of such an undertaking given the technical difficulties and political realties make this solution unappealing at the very least. If it could have been done easily, cheaply, and reliably then it probably already would have been done a while ago. Most people simply purchase the console(s) of their choice or maintain a windows boot partition just for gaming. Unless or until the gaming industry and the companies involved decide to develop a common language assembly and provide versions of their libraries in this assembly this problem will continue to persist. Even then there is the issue of backwards compatability with existing games.
As a disclaimer I do not program for the games industry, but some of my CS classmates ended up working in the game industry and this is my understanding from my conversations with them and my personal experiences. I may be wrong about certain minor details, but I think that I have presented the basic problems from the programmers' point of view.
Open Source games (Score:4, Insightful)
Just a question. If everyone is so serious about supporting it donate the time and start building games that can compete one to one with the big boys. Technically they should be better since it's a labor of love and all the technical issues that everyone complains about, game play and such, should have been adressed in development. Without marketing and corporate suits to consider the games should be able to hit a whole new level and actually lead the pack.
Just a thought.
Re:Open Source games (Score:5, Insightful)
Re:Open Source games (Score:3, Insightful)
For games, they spend like 75% of the efforts in the "data" (music, maps, etc etc) and 25% for the game engine, or so I heard. If you buy the graphics engine from another company it might be even less.
Open source, GPL, BSD...all is everything software not "art". Games are a different beast the open source movement don't know how to fight. We need to promote that too - "art" free of copyright issues and perhaps licenses which forces you to release the file you use
It's a problem of market share (Score:5, Insightful)
Games are a problem of how many people uses it on a desktop, nothing else. And games should be easier to support than a database since in games they spent most of the time in the "data" which depends on the game engine not in the OS, and the game engine can't be that hard with companies like Id. The core problem here is Direct3D but if people starts using linux I don't doubt lots of game companies will consider to create new games in opengl if they can get enought revenue from linux people.
With the current market share linux has is quite difficult to get anything. But if it grows we'll have lots of games, be sure. Heck, just look at doom, halflike, quake. Those games have been ported to linux (or they're in their way), and how much money can they have got those companies from the linux port? Nothing? Or almost nothing, compared with the revenue from the windows clients. That demonstrates that supporting games in linux is not hard, if it were too dificult and with the current lack of interest in the linux port they wouldn't have done it.
Do I smell bullshit? (Score:5, Insightful)
ATi cards' initial problems with Linux were due to a lack of driver support for Doom III. (...) Regardless of whether a game is based on an OpenGL or Direct3D API, the graphics card vendor's driver must support the game.
Bullshit. What's the fucking point of utilizing any API for any development if you have to have the vendor modify it to work with your product? I suppose that absolutely no OpenGL game ever works under linux without ATI modifying thier drivers to specifically support that game? There's a lot of games out there. Good luck implementing support at the driver level for each and every one of them, ATI.
It just pisses me off to see ATI try to pass this off as id's problem, when in reality there wouldn't be any fucking problem if ATI were make a proper implementation of OpenGL on linux, instead of focusing entirely on D3D/Win32.
End rant. Flame on, and all that good shit.
Graphics card's driver must support the game?!? (Score:5, Insightful)
The graphics card vendor's API implementation should be complete regardless of the games that use that API. Of course a card could have certain hardware limitations not allowing it to actually support the whole set, but this doesn't look to be the case with Doom3 and ATI.
True, today developers usually choose just one reference vendor for the development process (maybe sometimes because of the money they get rather than the actual lack of time to test on both, cmon there are just two!), therefore there could be some (possibly minor) incompatibilities with the other, but if both vendors' drivers were as complete as possible, that would definitely be a step in the right direction...!
Direct3D is a minority (Score:4, Interesting)
Therefore any sane producer should use OpenGL which makes it very easy to bring a product to any console, any computer and after some years to PDAs and Mobile Phones.
Today a productive sellcycle for a game should be:
1. sell on consoles - they have less problems with piracy and people are more willing to pay (overpriced) prices.
2. after the first hot sellcycle - three to twelve months - port the game to Desktop-Computers. There are million people which do not want a console but still want to play a game. Also those games are a bit cheaper which gets you more customers. Your game gets pirated though but as sales for (1.) already are over you simply live with it.
3. Meanwhile port it to Unix-Desktops or in other words, MacOS and Linux. It is a piece of cake, given you planes porting through all cycles means you gave some thoughts right at the start about portability and this pay off now. 10-20% additional sales for maybe 10 working days.
4. After several years portable gameconsoles, PDAs and Cell-Phones are becoming a target - your game outsold on the desktop and consoles, people knew your game and have good memory. People actually are willing to pay for Mario/PDA after having played Mario/Console. So now you recompile your game to those portable plattforms, sell it for a real low-budget-price and most likely you are outselling all earlier sales.
All portings only take some days of work, yes this can be done with some planing.
This cycle and no other will give maximum earnings. And it simply forbids use of Direct3D.
Re:Direct3D is a minority (Score:3, Insightful)
Correct me if I'm wrong, but I think Direct3D is also used on the XBox, since that's basically a Wintel PC w/ an Nvidia chipset.
Anyway, onto my main point. People play games primarily on 3 platforms: consoles, desktop PCs, and cellphones.
Consoles are typically proprietary des
Its catch 22.. (Score:5, Insightful)
Re:Its catch 22.. (Score:3, Insightful)
Last I checked, it wasn't. apt-get + Synaptic makes installing software really bloody easy. It's like doing a Windows update except you get tens of thousands of free software packages (including a few games) all a few clicks away. Personally, I find apt-get install tuxracer (or clicking for it in Synaptic) pretty idiot proof easy. Oh, you want to install UT 2004 and it's not in apt? Feel free to run the installer which works
Article Text (Score:3, Informative)
---------------
Does Linux Have Game
Introduction
[IMAGE]
Live out your Unreal 2004 midnight adventures on Linux.
Earlier this year, our Linux Comes to the Desktop article caused a stir, when we stated that gaming on a Linux platform remained a limited proposition. Now it is time to detail why this is the case. We will explore what is the best you can hope for when you opt for the penguin to play Unreal and Doom III. We will also look at why Linux lovers must be contented with the state of things -- for the time being, that is, because things are looking up for the Linux gaming crowd.
So why is wide-scale gaming support for Linux not 100% there? A better question may be: why would game developers spend the money to add Linux functionality to games for a limited number of users? The answer is not that simple, especially since Linux desktop use continues to grow.
There are many reasons why you might want to shift from Windows to a Linux OS. We won't cover what those reasons might be in detail here, but will note that users routinely complain of Windows instability, high prices and many layers of software that impede performance. For others, there are ethical considerations for avoiding Windows, such as decisions by courts of law in the U.S. and Europe holding that Microsoft has illegally wielded its monopolistic influence in the marketplace. On the other hand, there are magazines out there, backed by now-a-word-from-our-sponsor Microsoft ads, that claim Windows XP deserves your money.
According to a report issued this month by analyst firm IDC, Linux "is no longer a niche phenomenon." The overall Linux marketplace revenues for server and PC hardware and packaged software are expected to reach $35.7 billion by 2008, IDC says. Packaged software revenue is the fastest growing market segment within the Linux marketplace, growing 44% annually to over $14 billion in 2008.
On the desktop, IDC says Linux PC shipments are expected to almost triple from six million units this year to 17 million units in 2008. Percentages of PCs shipped with Linux increase from about 3.8% in 2004 to about 7% in 2008. However, these numbers do not take into account the PC units shipped with Windows, to which Linux is subsequently added.
As you can see, the evidence suggests that Linux on the desktop is growing, and that means more PC gamers who will want to be able to frag at will in Linux. In the game console sector, hackers already know that Microsoft's Xbox and Sony's Playstation II also support Linux.
Until Linux does become as pervasive as IDC and other analysts claim it will, what is a gamer who wants to play Halo on a Linux platform do? And why is it such an issue to begin with? Without detailing differences based on benchmarks, we offer a look at the connection between graphics card drivers and the APIs that developers use for their games, and how the interface between the two works and doesn't work with Linux.
Direct3D Vs. OpenGL
[IMAGE]
Doom III shows OpenGL can rock
Whether game developers use Direct3D or OpenGL as their API is the main determinant of whether a game will run on Linux or not. Both APIs are used to create games' 3D imagery, including lines and other shapes, smoke, shadows and all the other good imagery games offer. It has been said that Direct3D is superior to OpenGL, but this is not really the case. While Direct3D is indeed the predominant game API, superior graphics have more to do with the creative skills of the game developers than the choice of API.
Direct3D falls under the brought-to-you-by-Microsoft umbrella, and is geared for the Windows-only world. Because Windows is the main OS in the PC world, graphics card makers have only one OS with which to contend when configuring their drivers for Direct3D games.
OpenGL, meanwhile, is everywhere - it is compatible with Linux, Windows, Unix and Mac OS. But
/.'ed... (Score:3, Informative)
About open source games... (Score:5, Insightful)
Unfortunately, though, games are dissimilar to most other apps in that, for most other apps, you only need one: Windows has MS Office, Linux has OpenOffice.org, for example. For games, however, you need lots of them: Linux has Unreal and Doom, but Windows also has Far Cry, Half Life, and all the rest. So just having good open source games won't be enough unless all the Windows ones suddenly turn open source as well, which is unlikely.
So in the end it's back to the chicken-and-egg situation of the most popular OS getting the most games, and the OS with the most games getting more popular -- Linux will have to gain a larger installed base in other, non-gaming circles first, for game creators to have an incentive to port to it. (Which is already happening, to a degree. It just needs to continue.)
Graphics are not the only hurdle (Score:5, Insightful)
Sure, graphics are important, but sound, network and input APIs are actually in a much worse situation.
We can argue all we want about how OpenGL is better in many ways and I'd agree wholeheartedly, but Linux's sound, input and network support is just too behind the times in terms "out of the box" functionality or ease of use.
I have been a developer for many years and worked on many platforms, and a common pattern on any serious platform (even going back to the 8-bit days) is that there's complete (granted it's almost never perfect) support for all areas, and DirectX here is no exception, it has by far the best integrated gaming support of any API in existence. Whether it's buggy or low-performance or not cross-platform portable doesn't matter that much. Time-to-market is the name of the game, you want a sellable product and DirectX is the fastest way.
Too often for this kind of argument I receive answers that are ignorant, or uninformed at best, some of them sound like: "But there's OpenAL and it's cross-platform", "udev and hotplug are TEH R0x0RZ", "Linux networking is robust and good enough for servers, therefore desktop performance is guaranteed", "ALSA is better than the Windows crap", "Linux is more stable". Some of them may be right, and Hey! I want Linux to be successful too! But they're completely missing the point and that doesn't help the situation.
We need better API integration, better driver support from chipset vendors (not just graphics, you pixel whores!), BETTER END-USER UTILITIES and some company like Transgaming that can provide a sensible porting/cross-platform middleware solution for developers, not just wrappers for end-users. Criterion's Renderware is a very successful solution for home consoles, one would think there's a market for something like this on the PC.
Gaming on a PC is going away (Score:3, Interesting)
Re:Gaming on a PC is going away (Score:3, Insightful)
There are lots of great Linux games! (Score:3, Interesting)
As a user, I concur (Score:5, Insightful)
Two worries were preventing me from doing it. One was a worry about the inability to send a Microsoft Word format document like a resume in an e-mail, but of course, you have the ability to do that in Linux currently, and I guess for now, legacy Word programs force Microsoft to maintain backwards compatibility. The second worry, a more real one, was games. I knew the latest versions of Doom, Warcraft, Everquest and so forth were on Microsoft and not Linux. This turns out to be more substantial than my vague uneasiness over the ability to send Word format documents (which of course, for now, you can send in Linux).
What I did is install Debian 3.0 ("woody"). I played some games with lightweight graphics capability like Freeciv or Xboard, but then wanted something more hardcore so I downloaded Tux Racer. It was slooooow when I played. Averaging 0.7 frames per second actually. So then I read I needed drivers for my specifics graphics card to get it to a higher fps rate. I began installing the non-free kernel modules for it, but it was unhappy with the versions of some Debian 3.0 packages, especially XFree86 (xserver-common). I was also having some problems with my H-P PSC (Printer-Scanner-Copier) and its Linux drivers because Debian 3.0 had an ancient version of Python and so forth. So I decided to upgrade from stable version Debian 3.0 ("Woody") to testing version Debian 3.1 ("Sarge").
This fixed my HP PSC problems with Python versions. I am still struggling with Mesa, OpenGL and so forth, and right now can not run tux-racer. I have newer version of Mesa then I did with Debian 3.0, but I'm told my newer one is out-of-date by Tux Racer (whereas my older one was not). I haven't even tried to put the special drivers for my graphics card driver in (which needed the newer version of XFree86).
Anyhow, I've been using UNIX since 1989, and have been a UNIX sysadmin since 1996, and getting Mesa/OpenGL packages working on Debian is giving me trouble, I can imagine what it would be like for someone less experienced. Plus, even if I do get Mesa working for Tux Racer, I will have to be fortunate enough to have graphics acceleration support for my card in Linux. And then, even if those two birds get knocked down, how many games are there out there for Linux with those capabilities - Tux Racer? One or two more? What else? I already know that ease-of-setup for graphics is easier in Windows than Linux (system upgrade, then Mesa problem, followed by looking for graphics acceleration support for my card which may or may not be a problem), how does it stack up against DirectX for the same equipment?
Of course, for free systems, one good thing is I can be part of the solution. I have over a decade of UNIX experience, but only recently has my C programming gotten semi-decent (if that - I can write an OK program in a month, but then it takes me a year to debug all the thread race conditions, buffer overflows and so forth I seem to leave about). Even so, it is very daunting for me to feel I can contribute to these sorts of projects. I know a lot about how the Gnutella protocol so I have a leg up on other people looking to contribute to them - but looking over the code and seeing all of the linked lists, pointers to pointers, calls to GLib and so forth, I wonder if I can ever make a contribution to them since unlike full-time developers, I only have the faintest ideas how things like linked lists work. The learning curve to be able to contribute to these projects is somewhat steep in my opinion, although I always hear stories about kids who stumble over some code, begin sending contributions, and begin running some major project while a teenager, like the guy who maintains the Linux 2.4 kernel [kerneltrap.org] I run on my machine.
Open Graphics Project to the rescue (Score:4, Interesting)
Check out the mailing list [duskglow.com].
article summary (Score:3, Informative)
Nvidia does like Linux (Score:5, Interesting)
NVIDIA does have alot of third party extensions and other third party IP in their code...so if they open sourced that it would piss off alot of other companies.
Needless to say, I hope one day they can provide a nice driver that doesn't taint the kernel, however I am grateful that they are actually giving us something that is fully functional in Linux (x86, AMD-64) and FreeBSD.
Linux does not have game. (Score:5, Insightful)
Problem was, as an advocate (zealot?) I could not play Half-Life with my friends, and they were all into Half-Life. Now, don't tell me that you can run Half-Life on Linux by doing this or by doing that... I know all the things needed to make it work (it works now much better than it did then). However, it really never worked on Linux, or at least I should say it BARELY worked. I certanly could not use it for deathmatching.
When Q3A came out, I bought a Matrox card specifically because of the Linux compatible drivers, and their support of Linux. But Q3A did not run all that great on my machine, even if Linux did have a higher FPS at some of the more esoteric resolutions (Like 640X480 or LESS).
Now, as I type this, I am typing from an XP machine. It is not nearly as stable as I would like - nothing like the non-gui server I have next to me running RH 6.2 (Never bothered to upgrade it, it is still running just fine thanks.) I work on Linux all day, and I now do all my work with Putty to connect to the servers I work on. I am considering going back to Linux on the desktop for browsing, email and chat as I have been having stablity issues with XP and my DVD burner. However, I like my games, and I like playing them well. Furthermore, I like having the highest FPS and quality settings avaliable.
I use my computers as a tool, and when I get home and I want to play Counter Strike Source, Desert Combat or America's Army with my friends I use Windows XP. Don't tell me that these can work on Linux - I already know - and I don't care. I wasted too much of my time in zealotry trying to get some of my older games to run as well under Linux as they do on windows. I don't love XP - but it runs my games. You see, I like Windows for the ability to play games with my friends. I like Linux to run as a server and have the stability and power that a server should have. I don't use Windows servers myself, and I dont use Linux gaming machines. I would like it to change, but when I get home after work, I just want to game with my friends. I have no desire to poke a Linux box more. I get paid to do that at work, I dont want to do it at home.
Would I like to see it change? Sure, but it won't happen for some time if it does, and I have better things to do with my time than be a zealot.
Re:Linux does not have game. (Score:3, Informative)
I don't want to dick around with a machine that I use basically as a gaming console - and you cannot tell me that my framerate will be as good under Linux - because it will not be.
I want to play my game and NOT take the extra "20" min involved - for each game I play that is 20 min too long. Not worth my time. I prefer to use the right tool for the right job. Lin
Re:Linux does not have game. (Score:5, Interesting)
Long story short, it turns out this "bug" was actually a feature. [arstechnica.com] You see, if Windows XP is connected to a network that isn't broadcasting its SSID, and it sees one that is, it'll try to disconnect and join the other one. This happens even if the non-broadcasting connection is the only one in your "preferred networks" list. What had happened, of course, is that our neighbor had just got a wireless network, and forgot to turn of SSID broadcasting like you're supposed to. This particular machine was the only one within range, and as a result, freaked out.
Come to think of it, this is probably the same problem that plagued another one of my XP machines. I spent months trying to figure out why it'd randomly drop its connection, and finally gave up, assumed it was a hardware problem, and replaced the PCI wifi adapter with a small USB keychain one. Since it worked, I assumed that the USB dongle got better reception. Now I realize that the problem was just the opposite --- since the USB dongle got *worse* reception, it was out of range of a competing network.
I have lost tens of hours to this single damn bug, as well as $60 bucks buying new hardware I didn't need. All because some idiot programmer at Microsoft thought he could make a piece of software smarter than me. Whoever wrote the "Wireless Network ZeroConfiguration" for XP deserves a special place in hell!
Re:call me stupid (Score:4, Funny)
Re:call me stupid (Score:3, Informative)
Very hard. Since most games rely heavily on libraries of code the compiler would have to be able to recognise the functions and either translate Windows DLL calls to Linux .so calls or synthesise new code for routines which are not supported on Linux.
This is in the realm of possible but not the realm of even moderately difficult. Otherwise, as you say, it would already have been done.
TWW
Re:call me stupid (Score:3, Interesting)
Winelib [winehq.com] aims to do something like this, and for simple apps, it works. It still has a long way to go, and everytime MS adds or changes an API, it just adds to the to-do list.
In general, though, it isn't translating the source code itself, but compiling it on the target platform, where the APIs you use have to be available in some form. Winelib provides many of the
Re:It's the "video" drivers stupid (Score:4, Informative)
RTFA [tomshardware.com].
Somethings haven't changed (Score:4, Informative)
You mean keep doing what the mass majority of gamers have been doing for years? Its that kind of attitude why Linux is so heavily shunned by casual gamers. Most people are not willing to expend the time and energy and reap the rewards of what you learn just to get UT2004 running in Linux when they can use the auto-installing and play it on Windows. People want EASY. People don't like having to change their video settings everytime they want to play a certain game.
The masses don't like to get told, 'you should learn our complex and difficult methods to achieve the same results using your simplicitic and traditional ways.' Its like telling the American people that the electorial college is inferior (and in a way it is) but even if its true, people aren't going to go along with it for the sake of ease. (Do you REALLY want to spend the time and effort necessary to constantly remain updated and educated on what goes on in the government while having a job/family/school/social life/playing video games/reading Slashdot/etc.?)
Re:Linux Drivers: The Real Problem (Score:3, Insightful)
The problem isn't that they are full of themselves that they don't think anyone else could write better drivers than they could. The problem they have is that if they publish the specs, then some upstart company could potentially reverse engineer all their hard work (and in the process find ways around patents) without all the money that ATI and NVidia put into R&D for creating the techologies in the first place. There are preceden
Re:of course not (Score:3, Informative)