3D Benchmarks Under Linux 120
Clump writes, "Linuxgames has an interesting article that benchmarks 3D cards under Linux. This is significant because most hardware is only reviewed in Windows. Had I read this before, I may not have spent $150 on a TNT2 card. ;). "
Re:XFree86 4.0 & optimization (Score:1)
Speaking for XF4, has anyone done multi-head displays? I just can't for the life of me get a good series of video cards to work together. I have TNT2, Voodoo3, Matrox, Trident, etc cards lieing around my house, but no two want to work simultaneously in the machine. What, must you buy two from the same company? Or is there anyplace that talks about this better? I've heard good things with matrox, but I haven't found any old PCI cards anywhere local. I've been too lazy to go to eBay or something, and I would like to know a setup the does work first. Anyone have firsthand experience in this?
Re:XFree86 4.0 & optimization (Score:1)
Re:XFree 4.0 (Score:1)
Re:Some of the links in the article are broken - f (Score:1)
It's fixed now, thanks!
No it doesn't. (Score:1)
OpenGL is superior in visual quality, XP support, and ease of development. We HAVE OpenGL now. As to card support, it's not an issue of reverse-engineering the API, but of the card programming info itself. This is *hard*, if not impossible, even for Open Source.
Re:My Benchmarks (Score:1)
On the other hand, about five pages worth of docs on specific areas of the TNT2 would get it up to 95% working on linux. I'm sure NVidia is way too busy trying to make their high quality linux drivers have an engineer stop for an hour and write those and send them off to utah-glx, so about 50,000 of their customers don't have the current crappy,slow 3D support.
NVidia's problem is after two years of trying, they STILL believe they can provide better support under linux than the linux developer community. It is possible, but their work so far makes me doubt their ability to pull it off.
Re:ATI question (Score:1)
Well, because the rage pro never had 32MB
As for the Rage 128, that is a better question. My guess is either:
1: the rage 128 isnt accelerated under GLX_Utah or
2: the author is biased against ATI and didnt want a fair comparison
my guess is 1
--
Re:How does this apply to TNT2 (Score:1)
SGI's Linux Desktop (Score:1)
The kicker... it is running a "standard" Linux and it has an NVIDIA card. None of this seems to sound like it works with NVIDIA's current game plan.
Sort of like the NVIDIA SDK that was supposed to come out... oh, lets see... over a year ago. I have yet to see anything on it. They said that documentation was holding them up.
I know that I hope that they get something going soon, or my video will have to be upgraded again, and we all know how much a techie hates to upgrade...
Re:Challenge accepted (Score:1)
I'm not sure where you're getting the idea that OpenGL is an "artist['s]" tool. Most 3D animation uses OpenGL only as a means to an end. The final non-realtime rendering is produced using tools such as Renderman.
OpenGL is widely used in the scientific community. OpenGL simply isn't avilable for many scientifically important platforms, and I doubt it would be much used even if MS released a Direct3D for Unix.
usb & dvd, my windows is emulating linux then .. (Score:1)
But what I DO have is a DVD drive and a decoder card, and THAT was working pretty well 10 minutes ago (finished watching 2010: the year we make contact) without a hitch.
The decoder card is a Dxr2 and the funny part is, in windows I always had to decrease my resolution to 1280x1024 (my norm is 1600x1200) but in Linux(X) I could watch it full screen in 1600x1200 and according to top, the proggie only used about 10% cpu, and that's on a 300Mhz K6-2 (The same computer has seen the light and when I try to boot windows I swear I can hear it say "I'm sorry Dave, I'm afraid I can't do that")
Re:Where are the other common cards? (Score:1)
Well, the Permedia2 is an OK adapter, and I think there might be some plans afoot to provide DRI support (don't quote me on that- I only know the rumors I've seen passed about on the Utah-GLX dev mailing list...).
Having said this, however, I'd reccomend that you look into some upgrades to your machine. Soyo and FIC both have excellent motherboards that plug into AT and ATX cases. Both companies offer motherboards that have been certified to run from a 166MMX to K6-3's They can support most socket 7 motherboards (note: a CPU upgrade's also cheap as all get-out. A K6-3 400 and motherboard can run as low as $130US.) From there, you've got options. Increased horsepower, AGP support, etc.
If you do that and choose to do the display, get a Matrox G400.
Re:Where are the other common cards? (Score:1)
S3 up until recent times has been a pain (No driver or tech info)- they're slowly changing their tune and it's looking like the UtahGLX team might just get info on the mobile Savage chipset to start off with. Since we've no drivers for their chips, one can't benchmark.
XFree86 4.0 - Few DRI drivers out yet. (Score:1)
Drivers for the ATI drivers are in progress right at the moment but aren't there yet.
NVidia promised one, and now they're apparently backing down from the same in favor of some other infrastructure layered in on top of XFree86 4.0.
SiS 6326 drivers will start, probably when Jim Duchek gets the Utah-GLX drivers as far as he feels he can take them. As soon as the Utah-GLX team gets ahold of SiS 300 details, I suspect work will start on that chip as well.
S3 hasn't released any driver or specs- yet. We're waiting for their next move. Word got back to us via an attendee at the CGDC that S3 was at least interested in the mobile chipset support under Linux. More wasn't intimated, but I think that they'd be interested in a lot more support.
What about those of us who don't care about 3d? (Score:1)
Are there any sources of reviews for various cards, and their support under X, for people who want the best possible card to drive a monitor to 1600 pixels or higher?
Re:How does this apply to TNT2 (Score:1)
D'oh! I should have bought a 3DFX.
Re:XFree86 4.0 & optimization (Score:1)
You get the point...
ClanLib! (Score:1)
why no TNT, TNT2, or GeForce? (Score:1)
Re:why no TNT, TNT2, or GeForce? (Score:1)
Re:Voodoo2 still kicks! (Score:1)
Do the Voodoo2 linux drivers support scan-line interleave? From what I've heard, a 2 x Voodoo2 SLI rig is almost as fast as a Voodoo3, and I could get another Voodoo2 for cheap.
Re:The Rock Says... (Score:1)
Attracting commercial games companies to Linux can only be a Bad Thing....They will try to oppose Open Source software
Like Loki? They've been open-sourcing every bit of code they're legally allowed to. Look up SDL someday, it's a beautiful system, and it's open source.
We need to try to keep Linux as an underground phenomenon.
Oh, I see, this is YOUR sandbox, and the rest of us aren't welocome here. Last I checked, the GPL says we can make Linux into whatever we want, withoput asking you.
installing (Score:1)
1. dowload and install drivers
2. download and install directX
3. reboot (we can ignore this)
4. configure drivers
5. play games
using X:
1. download latest X binaries in chosen format and install them
2. X -configure; startx
3. play games
That's not so hard, is it?
If nobody's built binaries, and you don't know how, then ask someone to do it for you.
If you don't want to do a build from source (or don't want to do XXX), you don't really have to--the free-unix world isn't `one size fits all'.
Jeez; `you don't have GL installed properly' is equivalent to `you don't have directX'. If I want to pick on Windows, I can say, `Why do I have to download a new version of dirextX--why doesn't my video driver just work? Why do I have to download a different version of directX if I'm running NT or 9x? Why do I have to get Windows 2000 just to get the newest directX for NT?'.
Re:installing (Score:1)
try to get
install game
try to make game use mesa - hah!"
Here's something that I've been through:
0] try to get proprietary binaries to run
1] fail to get said binaries to run
2] wonder why they don't run
3] give up on trying to make them run (the most that I can do is reinstall the binaries, which are still proken)
4] `uninstall' program, which nukes msvcrt*.dll, breaking OS
5] say, `damnit!'; lay head on table; sulk
6] fix operating system
7] write my own damned program that works exactly as I want ^_^
By the way: I just built a new computer (with a Voodoo 3 board), installed a Linux GNU on it, and then installed XFree86 4.0. Then I discovered that I needed DirectX 7GlideV3. I'll give that a go in a week or two--I'll let you know how it goes ^_^
Re:What we need to change this (Score:1)
< RANT > :) Have you seen some of the drivers hardware manufacturers have put out for Windows?? They're Horrible. 3dfx has done this, so has Creative. Just to name a few. Especially when it comes to NT or W2k. The drivers aren't very well optomized, totally busted when it comes to SMP support on NT and W2k. And half the time are probably just hacked win9x drivers. I /really/ wish that hardware companies would stop screwing around and open up their hardware specs.. Then maybe a developer with half-a-freakin' brain can write GOOD drivers for windows AND Linux.. hell, through in BSD and MacOS!
Thats kinda funny
After all, they'ld sell more product if they had better drivers then their compitition. Why don't they do this? They say its becuase they're afraid that if they open their hardware specs, competitors will steal their technology and sell it as their own. SO WHAT IF THEY DO? They aren't going to beat you buy selling something as good as yours (same) unless they have something else you don't.. Like service!.. They have to inovate and make something better OF THEIR OWN to beat you.
No one cares about the customer anymore.. its really kinda sad.. /RANT >
<
Re:XFree86 4.0 & optimization (Score:1)
Seriously though, it is probably easier just to get a linux distribution already optimized for the newer processors (like Mandrake or Stampede)
Re:My Benchmarks (Score:1)
I don't mind spending couple hours installing and configuring Oracle on Unix box but I would never put up with doing the same for games ( specially when there is easy alternative available)
In summary, let Unix does what it does best - serving stuff.
Let Windows handle games.
Re:My Benchmarks (Score:1)
50-75 fps with my tnt2 under Win98/Quake3 4 fps with my tnt2 under X/Quake3
The reason it only gives you 4 fps is probally because it's actually running in software mode. My roomate had the same problem. That's why I got a voodoo 3 :)
Site crushed by /. effect (Score:1)
Are you listening, video card makers?
--Charlie
Re:What we need to change this (Score:1)
I'd like to point out a couple of things, however. In your post you said that "...companies like Loki are trying their best, but the games they are porting are older ones which have lost that "cutting edge" feel which new games have."
There are two very important facets of this "game porting" which do not show up immediately. One is that the profit from the games gives gaming companies the revenue they need to develop state of the art Linux games, but the second is even more important: you don't go from zero to hero in the graphics world overnight, that is, you can't just start writing a 3D game engine until you have a flexible, powerful 3D library built up -- which is exactly what Loki gains by doing all the ports of other games. Loki's port of Heavy Gear II featured a number of firsts:
So while I agree that Windows is currently the top game OS, I'm reminded of the fact that it took YEARS for Windows to get there from the old DOS shoot 'em bang-bang games like Duke Nukem, Rise of the Triad, and WolfenStein.
The transition to Windows games was a direct result of Microsoft opening the DirectX engine so that manufacturers could write better drivers, not the other way around. And honest, open benchmarks are the only way I know for a company to improve their drivers, wouldn't you agree?
These are mine: (Score:1)
win: ~40 fps (32 bit)
linux: ~8 fps (16 bit)
conclusion:
I wish I had bought a v3000
Re:Get terms correct: Direct3D::OpenGL (Score:1)
What do I do, when it seems I relate to Judas more than You?
Re:Linux REALLY needs something like this (Score:1)
With regard to testing, please see the project I've been working on recently, glean [sourceforge.net]. I can certainly use more contributions.
Re:My Benchmarks (Score:1)
1. Crash, reboot, PnP detect, crash.
2. Reinstall windows, crash, reboot, crash.
3. Download DirectX, crash, reboot, install DirectX, reboot, crash.
4. Crash, reboot, get to startup screen in game, crash, reboot, go back to 2.
That's usually what seems to happen... but Im sure that someone somewhere has actually installed a piece of hardware and had windows 'just work' with it too...
Re:My Benchmarks (Score:1)
The store guy got educated on exactly why I did not want a TNT card too, and good info on what of their stock was useful to their linux customers.
Shape up NVIDIA. You lose sales.
Re:What about those of us who don't care about 3d? (Score:1)
Matrox, the only way to fly 8^)
Voodoo2 still kicks! (Score:1)
Even though its old technology its still performs excellently. Great support for both Windows and Linux OSs and can be used with any other video card.
Also its pretty cheap. Was a good choice when I bought it and still is.
(Oh, though I wouldn't suggest buying Voodoo3s. They just don't have the price/perfomance/flexiblility.)
High Quality? (Score:1)
Re:High Quality? (Score:1)
But in any case, High Quality mode is 32bit textures, 32bit framebuffer, Trilinear filtering, high quality textures etc etc.
Re:My Benchmarks (Score:1)
Re:What we need to change this (Score:1)
Re:Need for a new (sub) distribution? (Score:1)
The reason for this has something to do with X11 generating interrupts or so, look for the GLX-Pages for more Info.
Re:why no TNT, TNT2, or GeForce? (Score:1)
nVidia's original GL drivers ran Quake2 beautifully... There last set seemed to break support for Quake2 in exchange for better support for Q3A.
nVidia keeps promising high performance drivers but they have yet to deliver.
Adam
Re:My Benchmarks (Score:1)
Even with nVidia's old drivers, I was able to get at least 10-20 fps (depending on what else I was doing at the time)...
BTW, from what I understand, nVidia's new drivers (hopefully coming soon to a download near you) are supposed to outperform anything that the DRI can do. Then again, I heard this from an nVidia developer, so it could just be a load of crap
Adam
Re:G400s (Score:1)
I do that all the time. What's so special about the Matrox?
Adam
ATI question (Score:1)
Do these not work on Linux?
Re:My Benchmarks (Score:1)
Re:Where are the other common cards? (Score:1)
My V2200 can keep up with a standard Voodoo 1 any day of the week...under windows.
Its a shame that it there are no 3d drivers for linux...
Its a shame that the windows drivers never reached a truly stable state...
Its a shame that its a very old card...
Its a shame that I'm too cheap to update...
Oh well.
Where are the other common cards? (Score:1)
--
Re:My Benchmarks (Score:1)
If you are just an ordinary user, you can't screw up the system no matter what you do. Period.
Requiring the user to "read directions" is a flaw on the designer's part.
I mean, it's OK to require the user to read directions in order to get things work, but it is also essential that the user cannot crash the system even if he/she does not read the directions.
I have used and tweaked Windows since 3.0 and I know Windows 9X cannot guarantee that.
Yes, the perpetual image of Windows crashes constantly is completely false, in a sense that they don't crash that often. But comparing to how frequently Linux crashes, hell, it seems often enough. In the long run, it creates the image of crashing constantly.
And hey, it need not reboot itself. After a while your resources will drom from 97% to 76% to 69% to 50% to 38%...and you know it is time to reboot.
You always know it is better for you to reboot it rather than it rebooting itself, right?
Re:ClanLib! (Score:1)
Re:ClanLib! (Score:1)
Re:Need for a new (sub) distribution? (Score:1)
Having a specialized Linux distribution for games kinda defeats the purpose of having the games running on Linux in the first place : not having to dual boot.
Of course, you wouldn't have to pay for it, but still...
Re:SGI's Linux Desktop (Score:1)
SGI's new x86 boxes should come out this year.. as early as may (according to my memory of comp.sys.sgi.*).
They'll be using the nVidia NV10 chipset (i want to say thats the GeForce 256 / Quadro stuff)
These will run SGI's linux. I have no idea how different it will be from what other people are used to, but I welcome it. SGI knows a hell of alot more about making hi performance system architectures, and the software (though usually proprietary) to exploit it than about anyone.
Initial configurations will be using intel chips IIRC, which is too bad. There will be single and multi-CPU capable machines.
Allegedly, these will have a _real_ GL/GLX implementation. Not this nonsense the x86 currently has.
Re:Voodoo2/Athlon/Linux (Score:1)
"The romance of Silicon Valley was about money - excuse me, about changing the world, one million dollars at a time."
Using Quake 3 as a benchmark. (Score:1)
Unfortunately under linux we still have the pre-XFree 4.0 server (unless you go beta), and it's quite a lot slower than the Windows counterpart.
I'm using a TNT2 and a GeForce DDR, and have tested a TNT2 under linux as well. I get about 1/2 to 2/3 of my windows FPS on quake.
Quake is a good benchmark program to use for 3D cards, since it gets to run on such a variety of platforms, and reflects actual working framerates.
"Old" matrox cards (Score:1)
Last time I ordered, the Mill 2 pci /4meg was 79. The mystique and extra memory was also there.
Re:My Benchmarks (Score:1)
Re:My Benchmarks (Score:1)
Re:My Benchmarks (Score:1)
slashdotted (Score:1)
come on `linuxgames.com` slashdotted, get with the figging program
How does this apply to TNT2 (Score:2)
-Ben
How about this- we still have it, it's called SDL. (Score:2)
Should have got a Matrox... (Score:2)
Linux, BeOS : same battle... (Score:2)
even if in windows i prefer a TNT2, i think i'll buy a voodoo3 just for BeOS and others OS.
--
BeDevId 15453 - Download BeOS R5 Lite [be.com] free!
Re:Should have got a Matrox... (Score:2)
Re:Challenge accepted (Score:2)
You point out the one edge that DirectX so far has over OpenGL, which is the ability to detect which features are implemented in hardware. There are, however, 3rd party libraries available for OpenGL that do the same thing--but really it should be part of the API.
I've done DirectX programming, and I don't really see how the various components (DirectDraw, DirectSound, DirectInput, etc.) are integrated in any way, besides the fact that they all use COM, require Windows, and have "Direct" in their names.
Anyway when comparing 3D graphics API's it's only fair to compare Direct3D Immediate mode with OpenGL. Sound and input libraries are important, and I wish Linux got up to speed in that department, but they don't really have anything to do with 3D graphics API's.
As for DirectX being faster for emulating features in software, this is not entirely true-- it is implementation-specific. It is up to the vendors like NVidia or Matrox to optimize their software fallback paths in OpenGL, whereas you are stuck with Microsoft code (which is reasonably fast anyway) for DirectX.
________________________________
Re:BZZT! Wrong! (Score:2)
Please explain in detail what it is about OpenGL that makes it unsuitable for games.
Please explain in detail what it is about DirectX that makes it superior in ANY way to OpenGL for gaming purposes. Remember, we are comparing API's, not implementations.
________________________________
Re:Get terms correct: Direct3D::OpenGL (Score:2)
For graphics, the times of requiring direct framebuffer access are over, which basically makes DirectDraw useful only as a memory manager for offscreen and agp memory.
Direct3D Retained mode is useful for simple modeling apps and not much more.
Direct3D Immediate mode is basically a (poor) mirror of functionality already in OpenGL. The only reason for D3D IM is MS politics of embrace and extend.
For networking, we have and always have had sockets. The sockets API is low-level enough for games, cross-platform, and easy to program in. DirectPlay, again, is an API created for purely embrace-and-extend reasons.
For input devices and sound, MS has Linux beat fair and square. Although they are twisted and contorted APIs, DirectInput and DirectSound fill holes that haven't yet been filled on Linux.
________________________________
Need for a new (sub) distribution? (Score:2)
a) kernel compiled for maximum optimization for games
b) services that make any impact on performance (even if ever so slight) removed
c) networking part of kernel tweaked for the typical size/types of game packets
Hrm. 1-2 fps faster than "non-optimised"?
Has anyone ever tried this?
good luck getting that to work (Score:2)
Having said all that, 2.3.48 was the first kernel to ever have support for G400 dual heads..I'm sure they have worked out a lot of bugs since, and will continue to do so..
I just wanted to say that while it sounds real cool and all, the G400 isn't all that great.
Re:No it doesn't. (Score:2)
Sam Latinga, lead programmer for LokiSoft, has written the Simple Directmedia Layer (SDL), which is a *cross-platform* gaming library, which handles input, (2d) graphics, 3d graphics thru OGL, sound, etc. It supports (if i'm not mistaken) *n*x (obviously), BeOS, Mac, and Windows.
If you take a look at the news from the last week or so on http://www.linuxgames.com/, you'll notice that about 60% of the new games use the SDL - and there's a very good reason - it's got GREAT APIs. I'm no game programmer, but I'd guess I could code up something simple very quickly if I decided to.
Unreal Tournament for Linux also uses the SDL - works great. (aside for the fact that the renderer needs work
Re:why no TNT, TNT2, or GeForce? (Score:2)
>>NVIDIA's cards - They've been making quite a stir with reports of fast, quality drivers that aren't open source. When they arrive, I'll be doing my best to compare their performance with all the other cards available<<
So, apparently they didn't review this because the drivers still aren't ready. I guess it's a good thing I don't expect any sort of performance out of my tnt card.
Re:Time for Redhat to show some leadership.. (Score:2)
You made the parallel with Intel. Intel gets it. You don't see Intel bragging about the latest opcodes in their new processor, but not telling you how to use it unless you sign an NDA. The more software that uses Intel-specific chip functionality, the less market share AMD gets.
Re:Time for Redhat to show some leadership.. (Score:2)
I have been forced to do all my OpenGL programming under windows, simply because getting decent framerates under Linux for the stuff I'm doing is impossible. To give you an idea of how bad NVidia's current drivers are, I find software rendering with Mesa under XF4 seems occasionally faster. When the initial driver announcement was made, I wrote a grateful e-mail to NVidia and forked out >$250US for a brand new TNT2 card, more than I've ever spent on a single computer component in my life. One year later I'm kicking myself for doing so. Even if their implementation is faster, I have been stuck with a substandard OpenGL implementation for a year. If I'd bought a cheaper card with equivalent OpenGL muscle (such as, say, a Voodoo3 2000) I'd have more money to spend on the next generation cards.
My next card's gonna be a Voodoo baby! NVidia, you suck.
Daniel.
Re:Need for a new (sub) distribution? (Score:2)
Re:why no TNT, TNT2, or GeForce? (Score:2)
1) They think nVidia is evil for not releasing specs and not being very Open Source friendly.
2) Because nVidia's developer's drivers suck. (But will hopefully be replaced by high quality drivers soon).
Adam
PS. Then again, it could be for both reasons.
This is the first step, now ... (Score:2)
Now, what we must have is an update of this benchmark with evolution of drivers implementation. Why ?
Because Linux (or other Unix OS like FreeBSD) is not Windows and the code haven't reached is best. But the author understand it: read "Future Work" at the end of the article.
I think it would be a good idea to have a site for benckmarking. People will do benchmark and send results to the site with full desription of their configuration. So, we can have good informations on well programming 3D games and knowing the graphic cards with good drivers (3D AND 2D). The site of course will have to precise how to do the benchmark in order to use data.
GOOD WORK LINUXGAMES and GLX-UTAH ! SHAME ON YOU NVIDIA !
Musings on 3D Cards, OpenGL, and Direct-X (Score:2)
First things First. The nVidia cards are hands down the best performing and best looking Game-class video cards for x86. Multiple people _left_ SGI to work at nVidia. SGI _sold_ graphics chipsets to nVidia. nVidia boards are made to be high quality 3d accelerators; this should be evident from how they exhibit very little performance degredation as resolutions/color depths are cranked up to the cards limits. Unlike Voodoo Cars, which tend to run well at low resolutions, and with low colordepths, the nVidia cards have always been rock solid 2d cards, and stellar performing 3d cards, at any resolution and any color depth.
nVidia employees have admitted that the current linux drivers suck, and obviously there is a great deal of performance work that can be done. I don't know that i'd hold my breath for open source drivers, but drivers that simply work and work well for a reference x86 and XFree86 platform would suffice to fill the largest hole. I would speculate that part of nVidia's reluctance to release drivers is because theres's frankly too much they'd have to released to get a respectable solution delivered. The "way to do 3d on linux" is still developing, and there are multiple parties taking multiple approaches to the problem. Which does nVidia support ?
At any rate, the point is, the nVidia cards have amazing performance and do not sacrifice visual quality or standards compliance to acheive this. Furthermore, nVidia has the cream of the crop working for them. Mark Kilegard (sp?), author of GLUT and previous SGI legend even works for them now.
On to OpenGL vs. Direct-X. Frankly, it's a apples vs oranges sort of thing. OpenGL is basically a way to make a uniform API for putting lines and triangles into a rendering context. It is _very_ low level. To get more useful functionality, you're typically going to be using GLU routines, as well as something like GLUT, libaux, or Open Inventor. It's good that openGL is _there_ for people that need to get that low occasionally, but run of the mill apps usually target GLUT or Inventor, as opposed to GL directly.
Direct-X, on the other hand, is a general purpose set of libraries to make doing interesting things fast(er) and uniform. Direct-X is much more tied to windows, and Windows hardware than GL is. Direct-X is also much more all-encompassing. GL doesn't even interoperate iwth the X protocol; thats what GLX is for. There's no intrinsic way to make an app take over the full screen with GL; every Direct-X program does this, as well as changing the resolution on the fly. Direct-X provides a uniform way to talk to all the sorts of hardware you'd like to talk to. There isn't a uniform sound API in Linux, (case in point: competeing sound libraries), much less a cross platform UNIX sound API. There are _no_ good API's for input handling in Linux, much less a cross platform UNIX method. While UNIX of course has nice networking features, there's nothing provided at a higher level than connect()/bind(). while thats enough to establish a socket, thats _not_ enough to make a good LAN-game subsystem. Any UNIX games need to build from the ground up.
Finally, lets get to the real apples-apples comparison here. Direct-3D vs OpenGL. Basically, OpenGL wins hands down for quality, standards compliance, ease of programming, and _performance_. It was once said (and i forgot by who), that the D3D system was so poorly written that it couldn't push enough triangles at the video card to make a difference; D3D itself was the limiting factor.
One area where D3D might do better than as-accepted GL is making performance tradeoffs. GL is marvelously inflexible when it comes to using/not using hardware acceleration. The most wonderful example of this is the SGI Indy R5000, with XZ graphics. Basically, the Indy's main CPU can do a much better job doing geometry calcs than the older XZ video board can. However, the GL subsystem sees a Geometry accelerated card in the system and immediatly dumps all the work to the gfx board. Downgrading video cards in this situation _increases_ performance. A similar situation exists when you define more lights in a scene than the hardware can efficiently support; suddenly everything sucks and you are left wishing there were a way to say "just do 95% of the stuff in hardware, leave the lighting to me!". Allegedly, Direct-X has ways to specify what does what job. That'd be handy.
Performance feedback is _possible_ with GL, but its not standard. SGI has many SGI-specific X-server and GLX extensions to do this. For instnace, theres an SGI extension for guaranteed framerates. If it thinks it wont be able to draw the current frame fast enough, it scraps it, draws it at a much lower resolution, then pixel-multiplies the rendered frame to fill the view-window size. Thus you get a constant framerate, but variable image quality. This is a great feature (assuming it works right), but again, its not a GL thing, its an SGI thing. It's something that games could greatly benefit from, but theres no standard way of doing it.
In summary, GL is great at what it does. I don't think anyone can argue against that. Likewise, D3D is awful at what it does, but Direct-X is a much needed layer for developers, for which there is nothing _close_ to a counterpart in the Linux, or UNIX world.
FPS comparrison. (Score:2)
Mind you, with nvidia releasing 'leaked' drivers like the 5.13 (www.reactorcritical.com) which Push my GeForce with all goodies enabled (slowest possible) to over 60 FPS in 800x600x32bit.
I'm hoping the latest Linux 2.4 kernel in combination with the Xfree 4.0 will be stable soon... I'm getting tired of seeing blue...
-grin-
S3TC and all things nice. (Score:2)
And now the threat is looming that S3TC may be scrapped (with it only being available on Windows 5.13 drivers) before Linux userd can reap the benifit from it.
That's also another thing that impacts the performance of 3D cards : Memory. S3 Texture Compression helps with this (quite a lot), but mostly it's impossible to do propper benchmarking on low memory systems, as there is a Texture throughput bottleneck. (It's practically impossible to play Quake 3 under Win98 using only 32MB, whereas Linux may handle that better AFAIK).
Just my Opinions.
Don't shoot.
:)
My Benchmarks (Score:2)
4 fps with my tnt2 under X/Quake3
We're almost there guys!
blech.
Performance != raw speed (Score:2)
Get terms correct: Direct3D::OpenGL (Score:2)
DirectX is a collection of interfaces, primarily designed for gaming. The true purpose of DirectX was to kill DOS by making it possible to get decent access to hardware functions in Windows.
Direct3D - is a 3D graphical API, somewhat analogous to OpenGL. It has been through a tortorous evolution, because up until V3 it was pretty much unusable. Beginning with V3 it started looking very much like OpenGL. Later releases have started piling the features on and on, to where some say it has gone past OpenGL. Others say that it's merely piled on features, not well thought through.
DirectDraw - More of a 2D package, but more than that, a fundamental API for gaining access to the framebuffer and video mode. To use Direct3D or OpenGL in Windows, you need to go through DirectDraw, first. The 2D part of this is rather similar to SDL.
DirectSound - What else, an audio library.
DirectPlay - I'm not sure if this is input device access, or network play access. One or the other, and whichever it isn't, is DirectSomethingElse.
The real key to DirectX is that it is the ONE way to do game programming in Windows. Though at the moment, it appears that the suite is getting well covered in Linux, between Mesa/OpenGL, SDL, and that audio library that Loki is backing. We're still missing a DirectPlay analog, whether that's input devices or netplay, we're missing both packaged library sets.
Re:What we need to change this (Score:2)
I think that directX is one of the main problems with Windows. As I understand it, it allows applications to directly access the hardware without having to go through the OS. This is not an Engineeringly sound idea. It increases performance, but it makes the system itself less stable.
--The Mighty Willtor
Re:No it doesn't. (Score:2)
But does Linux have similar libraries like DirectX? Not that I'm aware of, if someone knows differently, I'm interested. Keep in mind, DirectX is NOT just video - DirectDraw covers video, there's a lot more to DirectX. You still need sound libraries, input libraries (for joystick/mouse/keyboard), networking libraries - wait, that Linux does have these and they're better than DirectPlay - moving along, other things which are required for the gaming experience.
And these libraries would need to be FAST - and I have a feeling that they probably shouldn't be going through an X server at all. I don't know, what is the overhead of using X as opposed to using a direct-to-hardware library? Or is X used on a local machine direct-to-hardware? Like I said, I'm not sure. And again, this brings up control issues - I'm not sure exactly how keyboard and mouse control can be used through X, I've never really looked into it.
The final point is that such a library would need vendor drivers (either written by the vendor or open specs to be written by others). And this could be the real stumbling block.
What we need to change this (Score:3)
As a long-term user and fan of the Linux platform I can appreciate that it's annoying that things like this are always done in the Windows world, but in this case it does make sense - Linux is just not ready for gaming yet.
Sure, companies like Loki are trying their best, but the games they are porting are older ones which have lost that "cutting edge" feel which new games have. And there aren't many of them either, and they are only puchased by a small "hardcore" of Linux gamers. Unfortunately, Windows is still the platform for playing games on, whether we like it or not.
The situation won't really improve until Linux is made more friendly as a gaming platform. One of the main reasons why games are easily written on Windows is the DirectX API, which provides support especially optimised for every area of gaming. What Linux needs is something like this, but obviously open source so that it can be improved easily.
Until Linux gets this support I think it will always languish behind Windows as a platform. As a consequence, hardware manufacturers will be more wary about writing drivers for Linux, and they will have a lower quality than Windows ones. This will lead to the benchmarks (which will only be done on Windows to save money) not reflecting performance under Linux, as we see here.
Some of the links in the article are broken - fix (Score:3)
The "next" links on the bottom of each page seem to work though - or you can just add the "s" manually.
Have you ever looked at/used DirectX? (Score:3)
XFree86 4.0 & optimization (Score:3)
Re:What we need to change this (Score:3)
Linux has something BETTER than DirectX. A standard, cross-platform graphics API called OpenGL.
Despite what some (Microsoft) will say, OpenGL is well-suited for games, from 2D puzzle games to 3D shooters.
________________________________
Time for Redhat to show some leadership.. (Score:3)
Redhat should be doing something about the atrocious situtation for 3D video card support in Linux. If the problem is NDAs, then I can't see a better third party to trust with releasing binary drivers - a bad situation to be in, but we live in a world that just isn't going to see Nvidia (or anyone else) give up ANYTHING that might help their competition. Waiting 3 years for a card to become obsolete and then getting register info (maybe) isn't my idea of what will make Linux the operating system of the future.
Somebody needs to step forward, someone with money and reputation to help fix this situtation. Linux isn't going to make it to the mainstream unless we can either get third party hardware manufacturers releasing register level information - again, I've got some heat-resistant snowballs for THAT day, or get someone the community trusts working to support binary drivers - hopefully on all platforms (Alpha, PPC, x86, 68k, whatever).
NVidia has been taking a lot of flak from the community, some of it deserved, but I don't think a lot of people apprecate the kind of research and development dollars it takes to make a cutting edge 3D chip. Would you expect intel to release it's manufacturing processes and schematics for the Pentium III core (or AMD's athlon) under the GPL? of course not. While we're not asking for how to make a Nvidia GeForce, I think that's what NVidia is worried about.
But, to avoid rambling, some Linux player with some power and money needs to work with us here. SGI would be another canadate, Debian is GNU/Linux, so don't hold your breath, but Redhat is in a great position to show some goodwill and long-term thinking.
Kudos (still waiting for TNT/GeForce 3D so I can nuke windows)
Re:My Benchmarks (Score:3)
It shouldn't have to be so damn complicated -- we are talking about games, after all...
--
Re:XFree86 4.0 & optimization (Score:3)
Going back to Vodoo? I probally will (Score:3)
G400s (Score:4)
Linux REALLY needs something like this (Score:4)
If the community's goal is to get Linux adopted by more mainstream companies (note I said _IF_) a standardized performance testing suite is definitely going to have to be put together.
As far as video cards go, comparing Quake 3 scores is a start, but it's not the final word in 3D performance. There are very comprehensive test suites out there for 3D implementations that need to be ported or replaced on Linux.
We already have Viewperf (sorry, I can't find the link) which is an excellent cross-platform 3D benchmark. I believe its results much more accurately reflect the quality of a 3D implementation than, for instance Quake, which is heavily biased towards fast texture-mapped triangles (yes there is a 3D world out there besides texture-mapped triangles!)
A test similar to the OpenGL conformance test would also be nice, to make sure that 3D implementations out there for Linux are not "cheating".
________________________________
The author will update the G400 benchmarks (Score:4)
The author will redo the tests with correctly clocked G400 when he gets back from a business trip. See this forwarded post at Utah-GLX mailing list [sourceforge.net]
Also, as the G400 is quite much CPU bound in the tests, I would believe that compiling the GLX with better gcc parameters should also have had an effect to the scores.
Comparing DX and OpenGL (Score:4)
OpenGL has glut.
One point to DX for flexibility.
OpenGL has had implicit support for accelerated hardware Transform and lighting since Beta versions.
DirectX has only had support for this since version 7. Applications have to be specifically coded to support it.
Score is 1-1 so far.
Claims that DirectX is faster due to lower function call overhead are not strictly speaking true. Use of Display lists will speed up OpenGL.
I think I'll call this one a draw.
OpenGL has a very easy to understand API.
DirectX is cryptic, and still requires some Windows coding to set up the display.
Another point to OpenGL.
Direct3D allows you to test whether operations are hardware accelerated and turn them off if the quality improvement isn't worth the speed loss.
OpenGL will always emulate this in software
Since this is about fast games, I think DirectX deserves a point here.
DirectX has better software emulation speed.
DirectX has better Windows hardware support
OpenGL has better non Windows support. This includes Macs. This reduces the cost of porting games.
This points to a general benefit to using DirectX, but does not make it "Far superior". What OpenGL really needs is a set of other API's that are suitable for games, and are compatible (and similar in structure).
TNT2 Owners (Score:5)
If you're wondering why nVIDIA cards weren't reviewed, I've put up a couple of pages with information about the company and the saga of their "Linux support". The current rumor is that they have binary only drivers for XFree86 4.0 using their own straight-to-hardware pipeline (instead of DRI), and they're not really concerned about Linux users in general.
Link is here [wgz.org].
--