Microsoft Quits OpenGL ARB 525
gatesh8r writes "According to this story at the Register, it seems that MS has decided to up and quit the OpenGL ARB, in persuit of "focus our energies on improving and evolving our own Windows graphics platform" -- which means they only want DirectX. I'm not too suprised by this move, as OpenGL is the only viable API (along with SDL) for cross-platform multimedia and gaming software."
Patents (Score:5, Funny)
Re:Patents (Score:2, Interesting)
Was being a part of the board preventing them from enforcing some lame patents they have on 3d technology?
Re:Patents (Score:4, Informative)
On the contrary, Henry Ford would have a different opinion.
William Selden, an experienced patent lawyer and part-time tinkerer, "patented" the automobile in 1879. He used his experience to keep the patent pending for 15 years, until pioneers were finally able to sell the auto in volume. Then he sold the licensing rights to a firm, intending on enforcing them.
Forget the fact that Selden was only building on prior art ( steam engines powering boats, wagons and omnibusses ), and simply adapted an existing engine design. The patent office approved it anyway, in 1894.
His patent gave birth to the Association of Licensed Automobile Manufacturers, a group that used the power of the license to build an oligopy. Once the group gained critical mass, it refused to license new players ( like Henry Ford, for instance ).
But modern automobiles had little in common with Selden's concept, from the engine and transmission to the ignition and braking systems. Henry Ford fought the ALAM through years of suits, and finally overturned the patent in 1911. But the damage to the industry was done, innovation and expansion had been held back for nearly 15 years.
So much for patents fostering advances in automobiles. You can misuse a patent for anything.
More info:
http://www.bpmlegal.com/wselden.html
Go Figure. (Score:2, Interesting)
Screw Microsoft and their proprietary methods. Once we get Bushy boy out of office, look for more anti-trust charges to be filed hot on the heels of the European case.
First Post, by the way, that actaully has relevance to the discussion topic. Ain't I slick. LOL
Re:Go Figure. (Score:4, Interesting)
Yeah, and while we're at it, why not have Coke sell Pepsi at all their franchises too?
Microsoft leaving the ARB means nothing, as third parties are still quite welcome to write their own drivers, and they will, because workstation software (like CAD packages) aren't going to move off OpenGL anytime soon. You will still be able to get OpenGL drivers for your Quadro or Fire card.
Annoyed, but not surprised (Score:3, Interesting)
So what? (Score:5, Interesting)
Re:So what? (Score:5, Insightful)
They actually had quite the predicament - "Back in the day", they needed to support OpenGL in order to gain access to some nice CAD applications but then that fucking Carmack went off and leveraged it for the Best Damn Gaming Engine ever... If it weren't for Carmack, then we'd all be stuck in D3D hell - no cross-platform gaming for YOU!
But this is an interesting twist that I think the OSS community could use for leverage. Perhaps Carmack could work with Redhat or some other large OSS corporation in order to develop an entire fucking gaming environment - put the CD in the damn PC and boot directly to your game. They could create a specification to which PC manufacturers could adhere - obviously driver suport would be a nightmare but if it was created extensibly enough, this wouldn't be a problem (i.e. - "compile" an updated/custom CD and burn it).
Provided you could boot Linux on Xbox and PS2, you'd have one environment for development - just make the game and release for multiple platforms. Get the BIOS makers involved and this sounds like a big party on the grave of Bill Gates.
Re:So what? (Score:2, Insightful)
Re:So what? (Score:5, Interesting)
Yeah.. I hear ya'.... But it is possible to boot an OS from inside Windows ala BeOS.
I think that the moral of the story is:
Even if you don't play games anymore (like Quake or Doom... whatever... once you get to be a certain age, games don't appeal to you anymore...), go ahead and buy a copy because the future of driver support rests on Carmack's decisions. If he moves to D3D, then we are DOOM'ed. If Carmack moves to D3D, then every hardware manufacturer can't support OSS profitably... Microsoft picked a very convenient time, economically... They should be punished by the DOJ based on this decision (since they have been ruled a monopoly).
If only he could come up with an OpenSL environment (open-Sound-Layer).
Knoppix (Score:5, Informative)
But this is an interesting twist that I think the OSS community could use for leverage. Perhaps Carmack could work with Redhat or some other large OSS corporation in order to develop an entire fucking gaming environment - put the CD in the damn PC and boot directly to your game. They could create a specification to which PC manufacturers could adhere - obviously driver suport would be a nightmare but if it was created extensibly enough, this wouldn't be a problem (i.e. - "compile" an updated/custom CD and burn it).
Knoppix can boot to a full desktop with video+sound+net provided it knows about the hardware. The only trouble I've had with Knoppix are nForce boards. Yes, NVidia provides drivers. No, they can't be incorporated on the CDs because NVidia's license for their proprietary drivers is braindead in this respect.
Anyway, Knoppix shows that something like what the parent poster proposed is possible. Because it employs a compressed filesystem, Knopppix comes with 2 GB of software. A Knoppix-style game DVD could hold all but the most involved games in its entirety.
I don't think it would amount to a dance on the grave of MS. It would be fun to watch MS pooh-pooh it though.
Re:Knoppix (Score:3, Informative)
Theres already a gentoo based UT2k3 demo livecd, making one for halflife couldnt be too hard.
Re:So what? (Score:5, Informative)
The thing exists and it's called the Gentoo Linux UT2003 LiveCD [ibiblio.org].
Re:So what? (Score:3, Informative)
This is untrue. Portability and performance are not mutually exclusive.
Performance is more greatly affected by software design, not implementation hacks. Well designed software is also portable software.
You most certainly can have multiple processor specific optimizations. Just as you can have backend renderers for more than one kind of video card, or more than one kind of sound card. This stuff can even be decided at runtime.
Game development, like most commercial software development, is about getting the damned thing to work and out the door as quickly as possible, and preferably as affordably as possible. Everything else is secondary, including security, maintainability, and portability.
Im not surprised... (Score:5, Funny)
Re:Im not surprised... (Score:2, Interesting)
Re:Im not surprised... (Score:3, Interesting)
They want people to think they are open with
I think they've either found they can't control the OpenGL spec or feel they've done enough damage to it to be able to walk away. With Linux being the darling of the movie studios these days, OpenGL has got to play into that market big time. It's interesting and puzzling. IMO.
LoB
Re:Im not surprised... (Score:5, Funny)
conclusion (Score:5, Insightful)
Why did MS buy... (Score:5, Interesting)
Sure is a good thing that MS isn't abusing their monopoly position in the computer markets. Otherwise this move could be considered harmful to any competition that needs cross platform graphics capability. A developer would be crazy to interpret this as a strengthening of Microsofts position with OpenGL.
Re:Why did MS buy... (Score:2)
Re:Why did MS buy... (Score:5, Funny)
not money (Score:3, Insightful)
It's about control.
If you have control, the money flows on its own. Up until LicenseV6, Microsoft acted consistently this way. But a substantial part of their control consists of having a lot of money, so maybe they did need to activate the money pump.
Re:Why did MS buy... (Score:2, Insightful)
It does make sense, really. This actually makes pretty clear where Microsoft is going with OpenGL. From where I see it, not only does this get them out of having to bother with keeping OpenGL 'supported' on Windows, but they get to sue people that put it ON Windows for patent infringement. If you own the patent for a software process, and deliberately choose not to support it - AND you're a monopoly, you've just killed a technology.
Brilliant on their part. Use DirectX, or you'll be talking to our lawyers.
quit because asked to disclose patents OpenGL 2 (Score:5, Informative)
if they had said "we have these patents and you guys can use them after all thats what OpenGL is about we used SGI patents for years in NT" they people sould ship OpenGL 2 with no problems
or "we dont have any patents covering OpenGL" then peoplle could ship OpenGL 2 and if Microsoft turned around latter and said we have patents and we want money then everyone would have told them to go whistle as they did not declare at discovery
this looks like RAMBUS and JEDEC all over again
what does this mean for OpenGL ?
well everyone else has a few patents OpenGL was a way of combining they wealth
what is needed is a BIG stick to beat MS into line now I would say that SONY are the only people who could really benefit from OpenGL 2.0 and have a big enough stick and dont want MS in the living room (wich is where they are heading with tablets and HDdisc recorders )
PS2 Graphics interface sucked if they really would like to make it nice they would implement OpenGL 2.0 clean (no legacy stuff) and stick with the SPU2 this would make people kill the X BOX for sure and get back the living room for SONY
otherwise watch out
regards
John Jones
Re:quit because asked to disclose patents OpenGL 2 (Score:5, Interesting)
The only way MS will get a better part of the market with Xbox 2 is to release it before anybody else, which they're pretty well suited to doing. The Xbox was designed in half the time that the GCN was, and although it is less graceful a design, it's certainly made up for it with technical superiority, Halo, and Splinter Cell (SC used the Unreal engine, oddly enough).
Re:quit because asked to disclose patents OpenGL 2 (Score:3, Informative)
With the result that it costs more than twice as much to manufacture. They may be neck and neck in terms of sales, but only one of them is actually turning a profit for it's parent company.
Oh, and 'technical superiority'? I think not. Metroid looks better than Halo, and there's a perfect port of Splinter Cell on the way for the Cube (heck, the PS2 port of SC is pretty damn close).
Re:So why is that good? (Score:3, Funny)
You seem to think that it illegal to be a big company and/or try to make a lot of money. Why?
I don't have a problem with a company being HUGE or profitable. Although I'm not sure I can fault amazon for not wanting to be profitable either.
-BrentRe:So why is that good? (Score:3, Insightful)
Thank you for making this point. I have been saying this for years. Its not the size of the company, its what you do with it
One example: IBM, for all its prior anti-trust problems and size and stupid marketing of proprietary stuff (mca, ps/2, os/2) has turned into a pretty good company. I have owned alot of their servers, and they treat customers like gold. This is just my experience, your mileage may vary.
There are some sucky big companies, and some good ones. The sucky ones don't stay big forever, because people will quit buying their products, even if they are better, if they don't like the company. Capitalism is a self correcting system. Its just sometimes we are too impatient and want the results unreasonably quick.
Besides, if we didn't have BIG corporations, we would not have ships, planes, affordable computers, cars, etc.
Re:So why is that good? (Score:5, Insightful)
I just want to add, to cover all PoV, that a self-correcting system does not mean that no justice is needed. If someone breaks the law, I expect them to be found guilty and punished no matter who they are. This is whether they stole my car, robbed a bank, murdered, or broke antitrust law.
What make Microsoft and Sony different is not the size of the company. It's not the money they make. It's what they do with their power. Sony has not been found to abuse theirs. Microsoft has. EoS.
-BrentRe:So why is that good? (Score:3, Insightful)
Jeez how long did THAT take? (Score:2, Funny)
Like MS will EVER endorse ANYTHING AT ALL that isn't propriatry to them!
Re:Jeez how long did THAT take? (Score:3, Informative)
Does this actually change anything? (Score:2, Insightful)
Of those, how many are ported to any other platform than Win32?
It sounds like what Microsoft is doing is bailing out of a sunken (not sinking) ship, and just going with what's been working anyway.
Time to put your hopes into SDL...clearly other platforms are going to have to have something to entice gamemakers to import to them. If Microsoft won't support OpenGL, then they're the only integrated Windows player around. SDL will have to successfully get installations on Windows and Linux both, and get games ported to it.
Yeah, well, a man can dream.
Re:Does this actually change anything? (Score:2, Informative)
Aspyr [aspyr.com]
MacPlay [macplay.com]
There's also MacSoft but I don't see too many ports coming from them.
Many of the A+ titles make it to the Mac at least.
How many Quake3 engine games have there been? Wolf3d, MOH, SOFII, STV:EF, JKII, etc. Afaik all of these titles have been ported and are OGL since they're based on the Q3 engine.
Just wait until the Doom 3 engine is done, I'm sure it will find its way into just as many if not more games, and I wouldn't be terribly surprised if those find their way to the Mac or Linux (if anyone other than LGP can step forward and put some cash down on some decent ports).
The real question... (Score:2)
Not that that would be a bad thing, since there are many companies out there that create good OpenGL drivers for every video card imaginable (for the right price of course)... but would microsoft lack of support, or possible active "anti-support" of OpenGL be enough to kill it?
Re:The real question... (Score:2)
Can't say I'm surprised, but no worries... (Score:5, Informative)
Frankly, I think whether NVidia (and to a lesser extent, ATI) support OpenGL is far more important than what MS thinks. Microsoft has been openly anti-OpenGL for games for a long time (remember their deal with SGI?) But the OS support (i.e., "how well my game is going to work if I write it in OpenGL") is almost exclusively driver-dependant.If NVidia said "screw it, we're not going to support OpenGL; it's too much programming hassle" two years ago, that would've pretty much been curtains.
Why is NVidia still supporting OpenGL? Well, for one, their chipsets have traditionally been built around OpenGL. Secondly, they are really trying to capture the Academic market that SGI is dropping. Universities don't use DirectX. Finally, they have a lot of resources-- they can afford the software developers (and testers, etc.) to write both OpenGL and DirectX drivers.
Finally, as kind of an overall reason, the two APIs are not fundamentally dissimilar; you can pretty much implement one as a wrapper around the other.
I guess my point is that NVidia (and, again, to a lesser extent, ATI) has the ball here, and I think it is certainly predictable (even noble, given their conflict-of-interests) of Microsoft to step down, and this certainly does NOT spell the end of OpenGL for games.
End of open gl? (Score:3, Interesting)
Basically, they'll wait a year or two and then serve everyone who uses OpenGL notice that they are infringing on patents and ask for big fines, and promises not to do it again.
I wonder if they can also sue users for using OpenGL patents without a license. I mean, wouldn't it be interesting if MS could sue everyone who bought the (fabled) Linux and Mac versions of Neverwinter Nights? Sort of an inverse class-action.
-fred
Re:Can't say I'm surprised, but no worries... (Score:5, Interesting)
Nope. nVidia learned early on to develop API-agnostic hardware. They also learned not to waste time developing their own proprietary API (a la 3[Dd]fx's Glide), and instead choose to support whatever APIs are currently the most popular. That means DirectX and OpenGL (they would've supported Glide back in the day, had 3dfx allowed them, or had they purchased 3dfx before Glide was moot). From day one (well, Riva128 days, anyway), nVidia has supported DirectX and OpenGL. And lately, given nVidia's close relationship with Microsoft (XBox, DX8 shader implementation), one would be inclined to think that nVidia builds their hardware around DX rather than OGL. Is that bad? IMHO, no, but make your own decision.
As another poster mentioned, theCarmack almost single-handedly popularized OpenGL for game work, and the popularity of Id games and engines means that modern video card companies must support OpenGL. Neither nVidia nor ATi will be giving up on OpenGL any time soon, especially with Doom3 right around the corner.
Re:Can't say I'm surprised, but no worries... (Score:3, Informative)
I'd go a little further than just that. Actually, it's three words:
ID's John Carmack.
If people want Doom 3 on their computers, or any derivative thereof, or any derivative of Quake 3 (RTCW, Star Wars, etc), OpenGL is necessary. Once ID and John Carmack decide that DirectX is actually a *good* API to work with, then we'll see OpenGL die. The problem is that DirectX and Direct3D totally suck ass. In fact, every API that MS has come up with totally sucks.
I think that it would just be healthier for them to embrace OpenGL 2.0, instead of trying to stonewall it. Eventually, the gov't is gonna step in and smack them upside the head too. Using the broad install base of Windows to kill OpenGL progression would be considered anti-competitive.
Consortia (Score:5, Interesting)
I wonder if it isn't possible to build cross-platform graphics standards the way internet standards are built: after-the-fact, with the benefit of hindsight, mainly developed by loosely connected hackers, and formality and consortia only when absolutely necessary.
If I may draw a parallel, X-window stagnated a lot in its early years when it was developed by the X consortium. In more recent times, development has been a lot more open, and it has got rapidly better.
Why this matters... (Score:5, Interesting)
Rember DirectX;s parent radioActiveX (Score:2)
Good for all parties (Score:5, Informative)
OpenGL has prided itself on being a fully featured and complete solution for 3D rendering, using hardware as available. It remains the accepted and de facto standard in top development (CAD, 3D modelling) environments.
While Linux may be hurt by the loss of whatever little support Microsoft offered the OpenGL platform, removing Microsoft's focus in speed from OpenGL will allow both sides to improve what each think are important.
shudder. (Score:5, Funny)
Did anyone else read that as:
"focus our energies on imposing and evolving our own Windows graphics platform"?
time for an emulator? (Score:3, Insightful)
OpenGL a Multimedia Platform?! (Score:3, Interesting)
If it has, can anyone pass along a link to the site hosting the codec? This could outdo DiVX!
Re:OpenGL a Multimedia Platform?! (Score:3, Insightful)
Or maybe you had a problem parsing the "and gaming software" section of the statement?
Or maybe you don't consider anything with 3D graphics to be multimedia? Even if it has sound, and text, and wraps videos around the 3D objects?
Another attempt at leveraging their monopoly (Score:3, Informative)
Like it or not, we have two major influences to thank for not letting OpenGL die. Apple and Carmack.
Yes, DirectX is nice and fast, but there are some that argue OpenGL has a lot more potential in it, especially given that it is cross-platform. Eventually all of this (I hope) will turn around and bite M$ in the ass especially when they abandon backwards compatibility with the next big version of Windows.
Really, Thank Carmack (Score:3, Interesting)
Lo and behold, MacOS releases since Steve took the reins and video cards that he's thrown in have all had good OpenGL support.
This is bad news (Score:5, Insightful)
Well, get out your vendor specific shader white papers out.. your gonna need 'em.
Re:This is bad news (Score:3, Interesting)
This is great news. (Score:3, Interesting)
Now perhaps the board can move forward without entities like Microsoft bogging them down.
Why do you want Microsoft on the Board? (Score:4, Insightful)
OpenGL did OK when the markets that mattered (games) were pushing it over DirectX, even though Windows didn't have built in support for it. If people want OpenGL to continue to succeed, then they don't need Microsoft to support them, they need the products on the market to use OpenGL instead of DirectX by making OpenGL the better platform. I fail to see how Microsoft leaving the board will harm OpenGL in anyway, or should be unexpected or even a reason to make them into the villian.
ARB membership - bound by ARB bylaws (Score:2, Informative)
BTW, this is really old news.
-- Daniel, Epic Games Inc.
What does this mean? (Score:2)
Re:What does this mean? (Score:2, Informative)
You're thinking of the underlying rendering engine, Quartz EXTREEEEEEEME! *ahem* Sorry.
Quartz Extreme does the 2D rendering on CPU (for various reasons), then blits the resultant window bits to OpenGL as textures with alpha channels for compositing and warping. This is how you get the sweet sweet transparency effects handled by the GPU 3D pipeline.
Not That Significant - Yet (Score:5, Insightful)
OpenGL is here to stay folks. It is not as advanced as some of the pretty features of DirectX (ooh...shaders), but it will have them soon enough, and OpenGL is still widely used. It ain't dead. Not by a long shot.
Direct3D not DirectX (Score:5, Informative)
Initiatives like SDL and OpenAL are good efforts to make cross-platform standards for other portions of functionality that DirectX spans.
I wonder what Carmack will have to say about this?
Does this mean no Doom3 for the XBox? (Score:2)
This isn't a smart deduction (Score:3, Interesting)
OpenGL looks good in Java (Score:3, Insightful)
does it matter? (Score:3, Insightful)
In reality, neither OpenGL nor Direct3D are particularly nice APIs, and the future will likely belong to software layers on top of them. Once you have those, it matters less whether there are one or two backends.
OpenGL still matters (Score:5, Interesting)
However, the fact that Microsoft has withdrawn from the OpenGL ARB does not necessarily mean that they're going to stop supporting OpenGL on their OSes. As long as they allow OpenGL to run natively on future versions of Windows, I'm not too bothered by their withdrawal. Reading the last few years' ARB meeting notes, it's apparent that MS hasn't contributed all that much aside from some fuss about the ARB_vertex_program extension possibly infringing on one of their patents.
Hopefully, MS will decide to at least maintain their current minimal support for OpenGL on Windows. If nothing else, Doom 3 might be enough to convince them to keep OpenGL around.
And one final thing . . . Contrary to some of the comments expressed here, OpenGL is definitely not standing still. OpenGL 1.5 has standard extensions for vertex and pixel programs. It seems that the OpenGL ARB has stepped up their pace lately, and essential extensions are being approved much more quickly than before. It's a different approach to API design--more incremental than the one MS uses for DirectX--but I think it's wrong to claim that it's clearly inferior.
--Chris
Scientific Visualization (Score:4, Interesting)
I can only conclude that if this move is a precursor to more sabotage of OpenGL, it will marginalize MS Windows for scientific programming. Which, of course, will likely be another boon to Linux.
Big deal. (Score:3, Insightful)
I think that MS might have shot themselves in the foot here. It is certain that THEY will not write a scrap of code using OpenGL, but how will that stop people like John Carmack? Heck, he could be a major driving force for better extentions to the language. He is certainly not unaware of the rabid linux user who will refuse to buy the product unless it is cross platform compliant. After all, how many recent games can you point to by ID that were NOT able to run on linux eventually?
Hooray! (Score:3, Interesting)
their initial 1.1 implementation (the rest of the world is up to
1.4 and heading for the big 2.0 sometime towards the second half
of '03) - they clearly weren't getting much out of their presence
on the ARB.
Now they won't get to veto things and slow everyone else down
either.
I wonder how long it'll be until they stop shipping OpenGL
with Windoze? I guess so long as Quake/Doom need it they
are somewhat bound to keep shipping it.
OpenGL & Direct3D are converging anyway. (Score:5, Informative)
Since the programming languages for the 'vertex' and 'pixel' pipelines is essentially identical between D3D and OpenGL - and programs can be compiled offline using tools like Cg (C-for-graphics) - these programs can work identically between D3D and OpenGL.
Hence, all the complicated API for setting up textureing, fogging, shading, lighting, etc that consumes most of the API spec for D3D and OpenGL has boiled down to "load these two programs"...and all the complicated glVertex/glColor/glNormal stuff has boiled down to "send this big block of data to the card".
Also, both API's have complex support for all sorts of pixel depths and packing mechanisms - when we all know that 8 bits R/G/B/A is everywhere in the future.
Now there is very little left of either API except for legacy stuff (that programmers can happily ignore) and initial setup.
The new ground for standards is the 'shader languages' we'll be using to write the vertex and pixel programs. There is a standardization battle going on between three or four of these languages (all of which look a lot like C and bear homage to the venerable RenderMan interface). Cg (nVidia), OpenGL 2.0 (ATI, 3Dlabs), are the main contenders. Cg works identically for OpenGL and D3D - but isn't well supported for non-nVidia hardware. OpenGL 2.0 hasn't been finalized yet and obviously isn't intended to work with D3D - however it may
well be possible to use the OGL2 programming languages to compile programs you could load at the machine code level into D3D.
It irony here is that all programmers really NEED here is a much simpler API than either D3D or OpenGL. A way to clear the screen, a way to download texture maps, a bulk vertex data transfer mechanism and a way to download shader programs.
Writing thin wrappers for those basic functions would allow programs to run identically on D3D and OpenGL - and would make it quite possible to drop OpenGL support for everything except legacy applications in favor of a MUCH simpler API.
What needs to be standardized is the shader programming language - but that has no dependancies on the Operating System, graphics API or graphics hardware (presuming you can write back-ends for any of the mainstay 3D cards).
Re:OpenGL & Direct3D are converging anyway. (Score:3, Informative)
Last I looked they also needed to place the camera, arrange the scene, and light it up. Moving stuff around helps too. Which kinda describes an engine, not a low level API -- It's like bemoaning the lack of high level languages because you're using C instead of lisp. A number of engines exist, some of which must be at least dipping their toes into shader language support.
Nobody uses GL for games. (Score:3, Insightful)
I love OpenGL; it's really nice to do quite straightforward stuff. But given that:
Re:OpenGL vs DirectX (Score:5, Insightful)
What's the point of continuing with an inferior technology, even if it is more 'open'?
What's the point of continuing to develop an application, even if there are others on the market that have more features?
To Make It Better!
Re:OpenGL vs DirectX (Score:5, Insightful)
Your "superior technology" tends to work only on your "superior" OS. It also means that DirectX has a limited set of people that can direct its evolution, and that evolution can only proceed on one platform.
OpenGL, as "inferior" as it is, can continue to evolve and function on all platforms. If you had to write a graphics-intensive program that was multi-platform, you wouldn't have much of a choice on your set of libraries, would you?
Re:OpenGL vs DirectX (Score:4, Informative)
I'm no Microsoft-fanboy, but I have to admit that often having a limited set of people directing the evolution of architecture is the way to go.
This is why (among other things) hardware shader support has been sorted out in DirectX for quite a while now, while OpenGL had a horrible mess of incompatible competing extentions. Yeah, they are fixing all of this with ARB2 shaders and gslang, but.... like... 2 years later...
Re:OpenGL vs DirectX (Score:3, Insightful)
And Direct3D didn't have a horrible mess of incompatible competing shading extensions? What the fuck have you been smoking?
Re: OpenGL vs DirectX (Score:2, Interesting)
> That "inferior technology" tends to work on other platforms.
And Microsoft is eager for that because...?
Re:OpenGL vs DirectX (Score:2)
Gee, imagine MS making a business move that makes their flagship product more attractive. Damn them for that!
BTW, where are the articles about Sony's proprietary Memory Stick, or Nintendo's proprietary game controller, or Sega's proprietary memory card with the display on it?
Re:OpenGL vs DirectX (Score:2)
Re:OpenGL vs DirectX (Score:3, Informative)
Re:OpenGL vs DirectX (Score:5, Insightful)
The bottom line is that the API for DirectX is a giant kludge. Look at it if you got some time. It's like a combination of C and C++, using all the bad features of each. I've worked with DirectX 4, 5, and 6, over a year period, and the number of problems and quirks drove me to a stabler API. The next versions of DirectX aren't even compatible with previous versions! The MSDN documentation is incorrect and the code samples are horrible. What does that say about the software company as a whole?
Meanwhile, the API for OpenGL is clean and precise. You can tell they sacrificed a lot of features of C to get a clean API that is accessible from any programming language. The documentation is as perfect as you can get. The code examples provided with the documentation are solid and clear.
Having open standards mean that the community can get involved and there is an actual discussion over features. Programmers, hardware manufacturers, and gamers alike can get involved and discuss the pros and cons of every feature of the system. Sure, it takes time, but the end result is always far better than the hack jobs produced from close technology.
Having a closed standard means a few guys in the corner office decide what flavor of API they want to turn out that month, without a care in the world for what the developers or hardware manufacturers have to say. It means that if you don't like it, that's tough, you'll just have to bite the bullet and go along. And what if you don't want to upgrade from version 2.0 to 13.0? Well, that's too bad, because 2.0 is no longer supported.
And what features AREN'T accessible from OpenGL? Nobody has ever told me that. You can always build on top of the OpenGL foundation, and use the hardware specific, cutting edge stuff on top of that.
If you like having a tattered API that changes more often than your underwear, then go with DirectX. If you want a stable, solid API with great support on all platforms, then go with OpenGL.
Re:OpenGL vs DirectX (Score:2, Insightful)
Neat trick considering there never was a DirectX 4.
Re:OpenGL vs DirectX (Score:3, Funny)
Er, surely there was *something* that came before version 5? Or did MS just start there, knowing that everyone hates versions 1 through 3 of everything they make?
Re:OpenGL vs DirectX (Score:5, Informative)
Re:OpenGL vs DirectX (Score:5, Informative)
Re:OpenGL vs DirectX (Score:2)
Just becuase there was never an "official" release, dosen't mean that there wern't people writing things based on the code that was heading out the MS door on MCSP CD's.
Re:OpenGL vs DirectX (Score:3, Interesting)
Uh....what? Firstly no they aren't "compatible" from an interface perspective because each successive version retains the prior version interfaces (i.e. if you start asking for DX6 interfaces in your DX5 authored app, expect to change things, otherwise just keep asking for DX5 interfaces...it'll work just fine for someone with DX 8). DirectX is COM based meaning that in reality it is language neutral, though realistically it is usually used from C++.
Having a closed standard means a few guys in the corner office decide what flavor of API they want to turn out that month... Well, that's too bad, because 2.0 is no longer supported.
I am not a game programmer, though I have played around with DirectX just for fun, but I've noticed that the steep initial learning curve of it seems to make it enemies: People who just couldn't figure out COM who then forever become avowed enemies of all things DirectX.
You can always build on top of the OpenGL foundation, and use the hardware specific, cutting edge stuff on top of that.
Erm...if you're going to do that then be done with OpenGL all together and write to the GPU and video buffers directly, no? The whole point of a general API is that it encapsulates widely used features in a vendor neutral format. Calling vendor extensions hardly qualifies and at best could be a hack.
If you like having a tattered API that changes more often than your underwear, then go with DirectX
Yes, and if you want a car that doesn't progress as often as your underwear buy a East German Trabant...still the same car it was in 1960!
It's funny that I seem counter to your argument as personally I find that the most well behaved, powerful game that I ever play is Quake 3: Whether spanning windows, in a window, full screen, alt-tabbed 50 times, minimized/maximized-It goes through it all with absolute gusto. Other DirectX apps hog the whole machine rendering it into a single tasked PC, fall apart if I dare to alt-tab out of them, and just generally behave poorly.
Re:OpenGL vs DirectX (Score:2)
Apples and Oranges (Score:5, Insightful)
DirectX is a library. An implementation of a graphic engine.
OpenGL is a specification. OpenGL is NOT a product. OpenGL is not a program. OpenGL does NOT show a performance.
The current implementations of OpenGL are a little slower than DirectX, on published games. This is the effect of market pressure and MS market share. OpenGL API is cleaner, and would globally be better for the whole industry, if MS and say.. nvidia.. would make good implementations of it. OpenGL 2 would be incredibly better for the industry than Direct-X. However, the name of the game currently is crush your opponent. ( or king of the hill ? ) It was 3DFX. Then nvidia had its time. MS will have it. 3D labs will someday be there. However, at some point the industry will have to grow up and do what all other industry did : standardize.
For this, OpenGL was *way* before its time. So is OpenGL 2. But yeah, the proprietary solution, the deal with the game producers and the booth babes will make you choose DirectX.
Grow up.
Re:Apples and Oranges (Score:2)
Microsoft - Freedom to innovate or who shall we buy today.
Re:OpenGL vs DirectX (Score:2)
* Direct3D is faster than OpenGL
* OpenGL would be dead if it weren't for John Carmack
* OpenGL was written for workstation visualization, not games
Try a little harder next time, eh? If it helps, pretend you're posting on Adequacy.org.
Re:OpenGL vs DirectX (Score:2)
OpenGL is on the same level as Direct 3D.
DirectX is made up of several API's, including DirectSound, Direct3D and DirectInput.
A more accurate comparison to DirectX would be SDL.
Re:OpenGL vs DirectX (Score:2)
I didn't realise that DirectX was so much better than OpenGL. I guess I'll shelve all my OpenGL code and start coding for DirectX. Problem is, I can't find DirectX libraries for any computing platforms apart from a couple of legacy ones.
Re:OpenGL vs DirectX (Score:5, Informative)
* Standardized support for new hardware features such as vertex/pixel shaders, rather than kludgy vendor-specific extensions to expose the same functionality in OpenGL, and a graceful software fallback path to support vertex shaders in legacy hardware.
* Same for vertex/index buffers.
* Much better support library (D3DX vs GLU).
Yes, it's non-cross platform, and it takes the "everything and the kitchen sink approach". But for games, as another poster mentioned, often being first on the market to support the latest hardware features is more important than writing cross-platform.
Besides, any good software engineer will abstract out all the rendering/triangle-pushing code anyhow from the higher-level stuff (Scene graph management, visibility, AI, physics, etc.) which is independent of whatever API you use.
Re:OpenGL vs DirectX (Score:2)
Re:OpenGL vs DirectX (Score:3, Interesting)
this is about OpenGL 2.0 (Score:3, Insightful)
why do many of the GameCube Graphcs call look like OpenGL calls ?
the N64 was very sucessful for you guys profit wise + was not ArtX a bunch of ex SGI engineers that did your graphics engine ?
the DirectX is just a hodge podge and changes every 5 seconds yes its got alot better and very much OpenGL like if you look at its history
the vendor extensions are a nice way of implementing features of a card and its clean the core does not change
regards
John Jones
Oh look (Score:5, Insightful)
I don't want to waste a lot of time pointing this out, but take a little jaunt [slashdot.org] for yourself [slashdot.org].
Sure sounds good though, doesn't he?
Re:Not really surprised by this decision (Score:5, Informative)
Nor does Direct3D allow you to write for all hardware in a standardized way. Depending on the hardware you have pixel shader 1.1 (GeForce3), 1.3 (GeForce4), or 1.4 (Radeon8500). The Xbox also has a special xbox-only version of pixel shader 1.1 (xps1.1) and a another API which duplicates the OpenGL NV_Register_Combiner interface. Standard Direct3D 8 vertex shaders need alteration to work on the Xbox as several commands are missing. Pixel shaders (ps1.1) will work but sometimes behave differently because specular is handled differently than on the PC version of Direct3D. These problems exist with Microsoft's own "standardized" API on thier own hardware. You'll need to code several different paths for your engine regardless because of this. You of course could use the commonly supported subset of DirectX and get less power, but then you could also do that with OpenGL.
In addition to all the above, there are many hardware features that are not and never shall be exposed under Direct3D. The texture blending modes used on a game I worked on last year are only available on Geforce1/2 and Radeon hardware through OpenGL extensions. Under Direct3D they would require "Direct3D 8 class" (Geforce3 / Radeon 8500) hardware but work fine on the most common "Direct3D 7 class" hardware thanks to vendor extensions.
I agree on the need for an ARB vertex array/fence standard however
Re:Let the MS bashing begin! (Score:3, Insightful)
Re:This may seem trollish, but... (Score:5, Informative)
SDL [libsdl.org] - 2D and input (granted, it doesn't support as wide a range of input devices, but in most cases keyboard and mouse are all you need
fmod [fmod.org] - best sound lib out there, used by loads of commercial games.
HawkNL/HawkVoice [hawksoft.com] - good networking libs
Hope that helps you out. It helped me out.
--