Windows Vista May Degrade OpenGL
srw writes "OpenGL is the industry choice for cross platform, hardware accelerated 3D graphics, and it is also the only way you can get fast 3D graphics on your Linux desktop. It now seems Windows Vista implements OpenGL via Direct3D, seriously degrading its performance and attractiveness to developers." From the article: "In practice this means for OpenGL under Aeroglass: OpenGL performance will be significantly reduced - perhaps as much as 50%, OpenGL on Windows will be fixed at a vanilla version of OpenGL 1.4, No extensions will be possible to expose future hardware innovations. It would be technically straightforward to provide an OpenGL ICD within the full Aeroglass experience without compromising the stability or the security of the operating system. Layering OpenGL over Direct3D is a policy more than a technical decision."
Microsoft, you're fucking stupid. The EU are going to murder you over this and rest assure the settlement with the EU wont be as lenient as the last time. I think it would silly for prosecution to demand anything less than the division of the company for a repeat offense. And I think that this time they'll get it.
Microsoft, you must understand three things.
I am confident of one thing: the future of Microsoft will not be dictated by how well it fares in the US market but how well it fares in the EU market. It simply wont make sales in India, China or the South American countries. Linux is quickly becoming intrenched in these countries because these companies can't really afford to prop up the American economy. In many ways, the fact that they're so poor means they have to be smarter with their cash.Something that's better for us all.
Simon
Why risk using cross-platform standard while you can tie developers to your platform with Direct3D? It seems that Microsoft has no interest in supporting cross-platform solutions. Why should they?
Yup, just a variation on embrace, extend, extinguish. So what someone needs to due is sue. Of course that may not work either: although Sun got $900M, Java on MS is still broken unless you download Java yourself.
Microsoft is "upgrading" itself out of the marketplace. No serious gamer is going to want to use Vista now. It's turning into same mistake Apple made back in the day - trying to control everything at the expense of flexibility and compatibility. The only thing Microsoft has going for itself is ubiquity - people use it because other people use it. They're chipping away at that foundation with a jackhammer now. This also comes at a time when people are switching to Firefox in droves, with Mac and Linux OSes on the rise. Not a smart move.
I doubt layering OpenGL over directX will make a 50% slowdown; all the time processing is in the GPU and the amount of time spent in an API is insignificant. /.ed
The whole blurb sounds like a scare tactic to me. The article of course is
Does anybody else not believe this at all? I think this was totally blown out of proportion by the opengl guys and the real situation is going to be nothing like this. Of course, nobody on Slashdot is going to read the article anyway and the hyperbole is just going to grow and grow...
Particularly fascinating that with all of the (formerly) core features that MS has been dropping from Vista, they still somehow find time in the development schedule to screw over an open standard like OpenGL.
WinXP SP3 - Now with fewer features and less compatibility than ever!
I imagine that this is only the case in the Microsoft drivers. It is less effort for them to write a set of DirectX drivers for each graphics card they intend to support and an OpenGL wrapper that can be used with all drivers than write a DirectX and an OpenGL implementation for each card - particularly since DirectX OpenGL wrappers have been around for years.
Vendors like nVidia, ATi and Intel will continue to provide non-wrapped OpenGL drivers, since they will lose sales if their card does 50% worse than a competitor who provides a native implementation.
I am TheRaven on Soylent News
windows vista (I preferred longhorn!) is intended by microsoft to be as big an upgrade as win95 was over win3.1, but every time I read news about it, I simply make up my mind more not to buy it
.not running opengl effectively? are they kidding? how many independant software developers ( ms's biggest asset according to steve ballmer), gamers ( the #1 reason windows guys don't completely switch to linux), and researchers are going to be pissed off?
microsoft product designers like to develop software according to idealistic hypothetical usage situations. they assume that all users are happily running directx 9.0,that their video cards are all top notch and a 50% degradation would be nothing for the misguided few who still run GL. heck, maybe it will make them upgrade their dinosaur era hardware!
Linux does exactly the same with Direct3D when you use Wine or Cedega, nothing evil in that, it just makes driver writing easier, since you only have to write one driver and not one for OpenGL and another one for Direct3d. Beside from that I doubt the 50% performance drop, while there might be a drop, most of the work is done on the GPU, so a bit translation from one API into the other should be that bad.
Off-topic, but...
Anyone notice that every announcement about Vista details the removal of some interesting/important feature they haven't managed to complete or the addition of a newer, shinier way to screw everyone over?
Why am I using Windows 2000? Oh, that's right. It fucking works, and I don't have to deal with any of this shit.
That graphics card/chipset manufacturers provided their own implementations of OpenGL through their drivers anyway. (That's definitely the case for NVidia-based cards at least) Therefore, this would only apply to the system default drivers, which almost no-one will be using anyway.
This is going to be a non-issue for the vast majority of people, and certainly for anyone who cares about 3D performance. Don't let that deny you an opportunity to bash "M$" though.
It's official. Most of you are morons.
Yes, except the goal of D3D in Linux under wine is to be as fast and compatible as possible, so your favorite games work.
Microsoft doesn't have such motivation. The only goal that makes business sense is to have enough OpenGL to write it down as a feature, but broken enough that it's not actually viable, to promote D3D.
Don't think of it as a flame---it's more like an argument that does 3d6 fire damage
What? You think this will hurt Microsoft? Both of the examples you give are great examples of this sort of stuff working perfectly for MS.
OpenGL, and hence easily-portable games, are fucked.
I thought vendors already provided their own hw-accellerated OpenGL libraries - nvidia, ati, etc. In fact most FPS hacks involve using an opengl wrapper library that conveniently forgets to shade some vertices or something..
I haven't RTFA'D (why would i want to do that), but this OpenGL thru DX likely only concerns MS's own library, which btw sucks, so i guess this is a good thing...
What Microsoft is probably doing is revamping their software OpenGL client so that it runs on top of DirectX. This will make software only OpenGL even slower. What it will mean, though, is that in cases where crappy hardware manufacturers release bad (or no) OpenGL drivers, but merely mediocre DirectX drivers, they can use Microsoft's OpenGL drivers to get better performance and quality than they could with their own drivers.
So I suspect that for most people (i.e. those with decent video cards) there won't be any difference. For people with low-end cards, this will probably be an improvement.
Whoever corrects a mocker invites insult;
whoever rebukes a wicked man incurs abuse.
--Proverbs 9:7
Remember Sun's Java runtime environment. They removed that from the Windows XP distribution, because they wanted to push their own technology, Activex, instead of Applets. Now the same thing is occuring. They want to push DirectX, and they want even more! They want to kill the opponent.
I can't understand why they don't stand fair competition. Oh, my god, monopolies....
If this makes windows Smaller and more stable, I'm all for it.
Heh. Okay, that's probably not it.
If Microsoft is trying to make Direct3D the prefered rendering technology on Windows platforms by making OpenGL slower, they will only find partial success.
This won't work, because most Graphics Card manufacturers are the ones which make the OpenGL drivers for their own cards. These drivers are fast and (usualy) stable. Open GL won't go away, especialy since every other platform (Linux, BSD, Mac, BeOS, Whatever) support OpenGL as their primary 3d rendering technology.
So, who's affected by this? Game Makers and Video Card Makers. (Oh, and us, the customers, but I'm ignoring that for the moment.)
Game makers have to decided if they're going to make their games OpenGL, D3D, or both. OpenGL is more universal, but D3D will, of corse, be prefered. On the other Hand, if they don't want to make their game cross platform, they can just go D3D, and have the Half-Speed OpenGL built in. The Serious game makers will either Make it work on all video cards or rendering technologies (like Epic does) or specificaly push one technology and work on getting good support from Video Card makers (Like id does with OpenGL).
Video Card Makers now have an easy way to "opt-out" of making a good OpenGL driver... It's already emulated by Windows D3D. Sad, but I see lower end cardmakers doing this, but probably not Ati or nVidia. They will want to keep every inch of their market, and will provide a fully functional OpenGL driver for the platform.
So.... Nice try Microsoft. Again, if the goal of this is to make windows Smaller and more stable, I'm all for it! My graphics card vendor won't let me down, unlike what Microsoft has done in the past.
Ehm...
Isn't this a bit like going back to the age of Windows 95? That release didn't have an OpenGL driver, but nobody cared. It only came standard in Windows with NT 4, if I'm not mistaken.
But still, if you look at the standard OpenGL implementation in Windows nowadays, you'll notice that it's still basically crap.
"But why does Doom3 run at all", you might ask?
Well: because it's the hardware vendors who provide the driver. A major graphics chip manufacturer can't afford not to have a decent OpenGL driver. So, nobody will care if MS doesn't want to implement a decent driver. Nvidia, ATI & the others will put out a driver, as has always been the case...
So, stop worrying, then!
h357
sometimes i like to pause a game and do something else
with my computer.
booting off some sort of "live cd" would pretty much kill
off non-gaming tasks.
-k
If you actually thought about this for at least 5 seconds, you should have seen the simple fact that this is an idiotic approach. The whole idea behind an operating system is to provide a hardware abstraction layer so that games don't need to know whether you have a Soundblaster or a CMI8738 sound chip or whether your videocard is NVIDIA, ATI, or something else. DOS games were a nightmare because of this -- just ask a Gravis UltraSound owner.
Windows XP didn't come with hardware accelerated OpenGL drivers at all. You got a cheap old software renderer. OEM's usually installed the accelerated drivers themselves, or users had to download the driver from the video card manufacturer. Now, with Vista, you still don't get a full OpenGL driver, but you get an OpenGL wrapper for Direct3D, like GLDirect or AltOGL, which is almost as good, but still evil. No doubt, OEM's will still install full OpenGL drivers so that users won't call up asking why Doom 3 performs like crap on their new PC, and everyone who doesn't buy the expensive boxed Windows Vista will be happy with their 3D gaming experience.
Up to 50% slower isn't that bad anyway. "Up to" is just something you say to make your argument sound stronger. Something can be both up to 50% slower and up to 50% faster at the same time. If 50% slower is the worst case, I doubt we can expect the average to be much worse than 20-30% slower, which is pretty impressive for an OpenGL wrapper. Plus, if the wrapper is written well, you can promise that if Direct3D works, OpenGL should work too. I've seen too many instances where a card had good Direct3D support and OpenGL simply crashed the system after so many minutes.
The extremely bad part is, the wrapper will lead some manufacturers to stop supporting OpenGL, so there will be nothing for them to port to Linux. So by embracing OpenGL, while at the same time eliminating the need for driver level support, Microsoft will weaken manufacturer support for OpenGL on Linux. If you're a Windows user, you'll benefit from Microsoft making their wrapper as good as possible to kill manufacturer support. Microsoft has an incentive to not make the wrapper buggy. If you're a Linux user like me, this'll suck ass.
No serious gamer is going to want to use Vista now
;-))
i hope you are right, and everyone will switch to "better" platforms
but don't you think that it's FAR more likely that game designers will from now on design with ONLY direct3d in mind and that soon every gamer will have switched to vista and the possibility of game ports to other platforms will be reduced to 0???
i hope you are right and all the gamers stick to their windows xp/2000/98!
It really is a good thing that Microsoft doesn't try to work with the OpenGL-community.
At least now they can't screw OGL like they screwed SGI with the Fahrenheit-API!
Co-operating with Microsoft always seems to end up with you getting screwed. (OS/2 etc.)
or they have crappy managers over their programmers or crappy directors over their managers.
They can't write decent cross platform applications period.
if you steal from one source, that is plagiarism, if you steal from many, well, that's just research.
But still, if you look at the standard OpenGL implementation in Windows nowadays, you'll notice that it's still basically crap.
What's wrong with it?
I'm not challenging your statement, just curious.
I do agree that the OGL/DX debate is significant -- Microsoft would not be putting significant development resources into something if it wasn't going to produce money for them, and being the standard-setter for game APIs makes it more difficult to port games. But all that being said, the only time I've ever had a Windows box around, the party who seemed to be at fault was Matrox (not providing support for all card features in their OGL driver, which was rough for those NT 4 users who couldn't use the latest version of DX).
Any program relying on (nontrivial) preemptive multithreading will be buggy.
Shouldn't have locked yourself into the platform, eh? Perhaps you should have used Java.
With Microsoft perpetually attempting to muscle out any and all competition, isn't it time to give them a bit of their own medicine? Isn't it about time to proverbially walk out of the building and leave Microsoft in its playpen, playing all by itself -- as it seems to want to do?
Why can we all just get along -- except with Microsoft. Why cant we play well together -- except with Microsoft. Why don't we declare peace with all things geek -- except for Microsoft. Really. I'm real tired of hearing about Microsoft breaks CSS; Microsoft breaks OpenGL; Microsoft breaks this and that.
Can't we all just boycot Microsoft? Can't we ban together and do like unions do and call a stike? Why don't we all help get Linux, BSD or Macs in schools? Why don't we, weekly, help educate our employers about Linux, BSD and Macintosh? Everyone knows about Microsoft. We don't have to tell anyone about how broken a player Microsoft is in the industry. We just have to keep extolling the virtues of Linux and BSD (including Mac).
Every time we are on the phone with a vendor we need to insist they write drivers for Linux and BSD. Every time we're in front of a customer, we should at least ask if they have cost-sensitive requirements and would they consider a Linux or BSD solution. What's wrong with that?
Everyone who does Windows tech. should pick up a book (if you haven't) and learn a little bit about Linux or BSD. That way, the fear of "Oh, God! My skills may become less valuable if I don't defend my industry!" will diminish. If you're working for Microsoft, get the hell out! I turned down an offer from them -- you can too. Even their "campus" gave me the creeps -- and that was in 1998.
Aren't you just sick and tired of Microsoft?! Come on. They're NEVER going to change.
It's entirely Microsoft's fault that OpenGL doesn't work well on Windows to begin with, and it's entirely Microsoft's fault that the "fix" is to screw it in favor of Direct3D, and it's entirely Microsoft's illegal anticompetitive tactics that are driving the decision.
See how it all makes sense now?
"[Regarding the 'cloud,'] ownership was what made America different than Russia." -- Woz
From the article:
f e47-dfc3-4e74-92a3-088782200fe7/TWPR05007_WinHEC05 .ppt
f e47-dfc3-4e74-92a3-088782200fe7/TWPR05005_WinHEC05 .ppt
This information came from the OpenGL BOF held at Siggraph 2005 in LA this last Wednesday evening. This was confirmed at the BOF by NVIDIA, ATI and us (3Dlabs).
As soon as an ICD is loaded the composited desktop is turned off on Windows Vista. If you want the composited desktop Aeroglass experience, you will need to make your application go through Microsoft's OpenGL implementation, which is layered on top of DirectX. As pointed out earlier, this layering can have performance implications. Their implementation supports OpenGL version 1.4 only, without extension support.
We believe it possible to provide an ICD with full composited desktop support while adhering to the stability and security requirements in Windows Vista. But we need Microsoft's help in doing so.
Therefore, as mentioned before, please let your contact in the ISV or IHV or OEM community know how you feel about this and spread the word.
For some more information, you can browse these Microsoft Winhec slides:
"Windows Graphics Overview [WinHEC 2005; 171 KB]" http://download.microsoft.com/download/9/8/f/98f3
"Advances in Display and Composition Architecture for Windows [WinHEC 2005; 422 KB]" http://download.microsoft.com/download/9/8/f/98f3
Regards,
Barthold
3Dlabs
Basically the issue is this, you use a non-Windows API and features are disabled. They are not disabled because they lack the functionality but rather because you are using it. In other words Windows loses features because the very fact you are using competing software. The goal is of course to deter people from using competing software and make it appear the software is inferior to MS alternatives. Are you okay with this?
The best education consists in immunizing people against systematic attempts at education. - Paul Feyerabend
The major 3D applications like Maya, 3d Studio, etc. will be forced to port their code to avalon. These applications are all "windowed" OpenGL programs that need every bit of performance possible, make use many OpenGL extensions, and certianly use fragment/vertex shaders.
/linux ports they have more expensive development costs. They will have to either maintain code bases that support OpenGL AND Avalon, or they will stop supporting the lastest features that are added to their Avalon version, or possibly even just drop the non-longhorn platform support.
Maya and Softiamge et al will either appear outdated when running on Longhorn, or they will be forced to port to the new usloth API. Even better for usloth, is that the new API is only present in Longhorn. So now, every user of the newest versions of Maya, 3dStudio, Cinema 4D, etc. is also forced into upgrading their workstations to run windows Vista.
It also means that for those ISVs that have mac
A win win win situation for usloth.
If Apple were particularlly clever they would provided man-years worth of developer support to help these ISVs to ehance their OpenGL applications with even stronger features in their Mac OS versions. For example Apple could help each ISV add in support for VAR and other Apple OpenGL extension that can boost performance, tweak the Apple OpenGL drivers, and of course help tweak the applications. Then Apple could advertise better performance on Mactel hardware for the same applications as compared to the LongHorn version.
As studios are forced into examining the cost-vs-time-savings for the migration to Longhorn they just might consider migrating to a different platform altogether, particularlly if the time savnings can be demonstrated on the non-windows platform.
Of course Apple may not have high end mactel boxes for a while.... so we'll see what happens.
Microsoft makes shit APIs but they are very smart businessmen.
"And one last thing, on OSX they'd have the same problem if they had some sort of alternate 3D api. On windows, 90% of the stuff is D3D, or available in D3D versions."
... it is the graphics card manufacturer's fault? No way. I don't buy that explanation. Like Apple, MS could have chosen to use OpenGL -- in the past, or they could have moved to it eventually. Maybe they have good technical reasons for not doing so, but even if so, it can't be a coincidence that the choice yields a huge bonus for MS: anything that attempts to be multi-platform via OpenGL will have an automatic performance hit, and anything written for the Windows-only D3D api will perform better, and be harder to port elsewhere. To me, it looks more like the usual MS attempt to marginalize anything they don't have control over, and try to lock people into Windows.
Oh, come on. Yeah, of course OSX could have had that problem. So, why doesn't it? Why didn't Apple come up something completely new? Probably because OpenGL already existed, it is something familiar to programmers already, and it helps portability to follow a multi-platform standard.
None of this matters one iota to MS, of course. Instead, maybe it was performance, maybe it was features, but regardless of reasonable reasons, the result was that Microsoft decided to implement their own non-portable interface (Direct3D) rather than go with an open standard. D3D is a single-platform solution, but at least OpenGL is supported as an equal alternative by current versions of Windows.
Now, apparently, everyone is expected to tolerate slower OpenGL performance under the new Windows, because
OSX does all its eye candy without hobbling OpenGL, as do some Linux window managers. Are you saying that with MS's vast resources *and* a couple more years, they couldn't do the same? Maybe supporting a second 3D api (D3D) was a technical mistake in the first place.
What about when new hardware comes out that isn't supported on that bootable disc (not to mention all the current hardware that isn't supported)? A game for Windows doesn't have this problem.
--
WHO ATE MY BREAKFAST PANTS?
I personally agree with this statement. I think overpricing windows does great for the Open Source cause and if I had my way it would cost somewhere about the GDP of Italy. However, looking back at the parent poster's previous posts I wish to point out that he works or has worked for MS, the company that claims that selling a PC without Microsoft Windows is tantamount to Windows piracy since it is considered the only OS that people would install. This seems to me to be hypocracy through association. Microsoft seems to like to claim that they are the only option when it works for them and that they are not a monopoly when that helps their cause.
When Argumentum ad Hominem falls short, try Argumentum ad Matrem