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."
This seems in line with what MS normally does. They've been trying to snuff out OpenGL (so far as I can see) and keep everyone in proprietary DirectX technologies.
Join the Empire! http://www.empirereborn.net/
Read this post for an explanation of why this problem is NOT as bad as people are making it out to be.
LINK
You do realise that most if not all graphics card/chipset manufacturers provide their own implementations of OpenGL with their drivers, don't you? That this is only going to apply to the system default drivers that no-one who cares in the least about performance is going to be using?
European governments are starting to wise up that transfering as much as 0.3% of GDP to the United States in Windows licenses is not a smart move.
Can you give any references for that figure please? According to the CIA world factbook, our GDP is $ 1,782,000,000,000 - are you really suggesting that we spend more than $5,300,000,000 on Windows licences? According to computerworld, MS's revenue for 2004 (total, not just for Windows) was $36.8 billion; that would mean (according to your figures) that the UK was providing well in excess of 14% of MS's revenue...
It's official. Most of you are morons.
This entire story is anti-Microsoft FUD. Microsoft is not bothering to maintain their "generic" OpenGL support as anything more than a wrapper to their preferred API. However, the only thing anyone is likely to be running the stock generic OpenGL driver on Windows for is the OpenGL screensavers on workstations not using a nice video card or downloaded drivers. Every Nvidia and ATI driver comes with its own OpenGL implementation.
0.3% of GDP on Windows licences! Are you having a proverbial "laugh"?
UK GDP - source Google - $ 1,782,000,000,000
0.3% of UK GDP = $5,346,000,000 or $5.4bn
I'm sure the UK spends a lot on Windows. But bear in mind that Microsoft's total annual revenues are only about $40bn, of which roughly half is client (Windows XP, etc.) and server (Windows 2003 Server). (In fact this over-states total Windows licenses, as there is also SQL Server, etc. in there.) But even on a best case, you're saying that the UK buys more than a quarter of all Microsoft Windows licenses. In fact, what you're really doing is making up sprurious statistics to get some temporary kudos.
Next item of absurdity: "the United Kingdom spends 0.3% of GDP on it's transport infrastructure". Really? Source please. Of course there is no source, because this is a ridiculous made up number. Lets go to the UK Office of National Statistics: oh! it turns out that the UK government (excluding what is spent by private industry) spends, da da, £20bn on transport infrastructure. (Which, at today's exchange rate is about $35bn, or around 2% of GDP.)
Congratulations, you made up some numbers and now will be modded all the way back down to -1, troll.
Goodnight.
--- My dad's political betting
It certainly is easier than say, educating them not having 10 children per family.
I see you haven't travelled much recently. Those families are a thing of the past everywhere, even in (gasp) the US. Oh, and large populations = poverty, right? Boy will you get a shock when China gets its act together soon. Not only do people work, they also create work. Production. Wealth. The more people you have, the stronger your economy. The problem in the 3rd world is a political one and has to do with corruption unfairly affecting the distribution of wealth. It's not due to "overpopulation" and "undereducation". The literacy rate where I live is higher than that in the US, which is suprising since our health budget is much less, per capita. Be careful, the US is slipping quite a bit, despite what your politicans tell you.
Actually the idea is not for MS to lose money when people import from the 3rd world. It's for them to earn more by dropping their price a bit in the developped and the 3rd world. Yes, that's right. Earn MORE by dropping the price. It's the best way to get rid of piracy. They certainly aren't making any money NOW in the 3rd world.
Seven puppies were harmed during the making of this post.
MS and OpenGL: supporting it to death?
e ngl_supporting/
http://www.theregister.co.uk/1999/12/06/ms_and_op
quote:
"Microsoft quietly drops Windows OpenGL support? Oh yes, we think so..." (december 1999)
Regards, Roman
I know it's hip to be pro-Microsoft lately on Slashdot, but this story really is true. Loading an ICD will disable Windows compositing unless you go through Microsoft's wrapper layer which is fixed at OpenGL 1.4 with no extensions. Look at the Mirrordot story to see the Slashdotted article.
There are no real efficiency considerations in the API as such anymore however. A rather amazingly large part of the logic functionality of modern graphics "hardware" actually live in the driver. The operations actually provided by the hardware are limited and primitive, the driver typically has a number of options how to assign a high-level operation on the hardware, and a lot of preprocessing and adjustment of the function is needed before it is ready to execute efficiently. This is also where time is spent, in code that are most likely in any sane driver common to both OpenGL and Direct3D.
One very general and simple example is when a geometry set is uploaded to the card (through a vertex array or such). The hardware will often cache a number of old transformed vertices, if two primitives with the same vertices come too far apart in the set however the cache will not be effective. Therefore the driver spends a fairly large chunk of CPU-time reordering primitives so that shared vertices occur as close to each other as possible, this will make the transform cache able to pick the already-transformed vertex instead of having to redo it. Even worse the hardware may only provide a hand-managed cache, so that the driver has to insert quick stores and loads for transformations in cache.
This type of operation is fairly expensive and the driver has to do a lot of them. Another simple example is pixel shaders, which are translated to some internal form, typically with some optimization to fit actual hardware limitations. It is however not really on the API level, it is really logic that is expected to be below the API implemented as software since having the hardware provide operations directly mapping to the API would be exceedingly complex and inefficient.
I understand that the article is slashdotted, so your mistake is forgivable. Here are the facts: MS is making vendor-supplied OpenGL implementations second-class citizens in Vista. When you use one, all the new graphics features they are including in Vista will be switched off. Users won't take kindly to your program disabling eyecandy across their entire desktop. This means that people must choose between using Microsoft's OpenGL supplied with Windows (which has always been and continues to be crappy, especially now that it will be layered on top of DirectX), or having their users hate them, or switching to DirectX. The people calling for action are the likes of ATI, NVidia, and 3DLabs, not just some random MS bashers.
main(c,r){for(r=32;r;) printf(++c>31?c=!r--,"\n":c<r?" ":~c&r?" `":" #");}
He didn't say that it was the UK that was paying 0.3% of its GDP to Microsoft. He said that European governments were paying "as much as 0.3%"; most likely it's some nation with a very small GDP that is paying that fraction, and the fraction for the UK is probably much less than 0.3%. He also said that the UK pays 0.3% of its GDP for transportation infrastructure. He did not say that the UK (nor indeed, anybody) pays as much for Microsoft licenses as for transportation infrastructure. The discrepancy you claim in the transportation number could as well be explained by a difference in what's being counted (I, for one, am not clear on what "transportation infrastructure" actually should include, and there's also the question of whether it's gross or net); it needn't be deliberate deception.
I can see your confusion, and I don't know whether the statements made were true, but they are not so obviously lies as you claim.
What does this mean? The compositor will indeed run more slowly (in software) when a full-blown OpenGL app is run. In most cases this does not seem like an all that huge issue, it ought to be plenty usable anyway (try tunning OSX without Quartz Extreme, it is a bit more sluggish, but not unusable). And for the typical light OpenGL app (non-games) the wrapper will probably do OK and then not interfere with the compositor.
Sure it would have been much better if the hardware compositor and an OpenGL ICD could work together, but it is on the other hand also clear that it would most likely have been a lot messier for both Microsoft and driver writes to achieve (basicly an OpenGL context is to be composited into a scene drawn by a Direct3D context). But it is hardly the end of the world for OpenGL, notably pretty much no games at all will be affected at all since one does not tend to window-manage a great deal while playing a game.
If I have misunderstood the available information I apologize, but if this is correct it is, while maybe not ideal, hardly the sky falling either.
http://www.100fps.com/how_many_frames_can_humans_s ee.htm
You can possibly see changes up to 300 frames per second. It all depends on the factors listed in that page.
No existe.
"I imagine that this is only the case in the Microsoft drivers. "
I believe Microsoft generally does not write drivers. The drivers that ship "in the box" with MS Windows are generally written by the hardware OEM. The OEM submits them for WHQL (Windows Hardware Quality Labs) testing. If they get approved, Microsoft may include them with future releases of Windows.
I'm sure there are exceptions to this, but I believe that is how it goes, normally.
dragonhawk@iname.microsoft.com
I do not like Microsoft. Remove them from my email address.
From OpenGL.org,
"What can you do?:
1. Write to your preferred ISV, hardware developer, video card manufacturer or OEM and tell them to bring this up with Microsoft (e.g. 3Dlabs, ATI, Intel, Matrox, NVIDIA, HP, Dell). This will be the most effective action you can take.
2. Bring this issue up on other developer and tech-related web sites. If you have a personal blog or podcast, talk about the issue there. Windows Vista might end up being a great product, but not if OpenGL is crippled
3. Post your comments to our public message board. The more conversation and solution ideas, the better."
stillwaters: silent and reticent
Microsoft's software implementation only implements up to the OpenGL 1.1 standard (IIRC). That is what's wrong with it.
the 1950's batman had a concave chest and wore under-roos.
those details died with the old series, and so did the red phone.
Actually (at least on windows XP line) thats not 100% correct.
What happens is that windows provides opengl.dll fixed at and containg all the hooks to enable opengl windows to be created, extentions to be enumerated and accessed and so on (the wgl* functions)
Then, the graphics card vendor provides an opengl ICD driver that contains the actual OpenGL implementation and talks to the other display driver components (e.g. the miniport) and from there the hardware. The ICD driver can implement any extentions the graphics card maker wants (including functions from versions of OpenGL greater than what microsoft ships, vendor specific functions or whatever else)
Without the hooks in opengl32.dll to talk to the ICD (including all the wgl* functions) the graphics card driver is useless. From the sounds of it, microsoft will implement OpenGL (including opengl32.dll and the wgl functions) on top of Direct3D. (kind of like the reverse of what WINE does by going Direct3D->OpenGL)
The graphics card vendor cant provide their own opengl32.dll because the hooks in other parts of windows that let you create OpenGL windows and such (used by the wgl* functions) do not exist and cant be accessed by the driver.
Havent been paying attention have you? Quake 2 and 3 both have D3D pipelines these days, the Q3 ones can be seen in Star Wars Jedi Knight 2 or later (and I'm pretty sure Call of Duty and RtCW use it).
And way to talk about only one genre. FPS games are not everything. Name one RPG engine written in OGL in the last year. Or how about a sports game? Or an RTS... the latest one I can think of there is Empire Earth II, and it's D3D. Oh and every MMO to date has used D3D exclusively bar one, World of Warcraft, and it still uses it by default.
Also, for record, Half Life is a modified Quake 1. They licensed the source to Q2, but they didnt use much from it, and Valve basically replaced everything in Q1. They just used it as a starting point.
So basically, in conclusion, the only relevent game engine still using OGL is Doom3, and it's not really winning any popularity contests.
That is partially correct.
Vista's graphics subsystem virtualizes the graphics hardware when running in "Aero" mode (ie: the mode with all of the eye candy); think of this as a multitasking scheme for your 3d card. This mode can't be used with a library which requires exclusive use of the graphics hardware, as you correctly surmised above.
However, when you run an application that runs an XP era OpenGL ICD, the system falls back to the XP-style compositing scheme (ie: eye candy gone). In other words, vender supplied OpenGL ICDs still work.
Furthermore, venders can create LMMH compatible OpenGL drivers, which would contain the right "goo" to share the graphics hardware with the OS.
There is nothing "lcoking" in the OpenGL implementation that can be used on a Windows machine at a pure 1.4 level. Nor is this some conspiracy to make OpenGL "slow" (the previous system supplied implementation was a SOFTWARE renderer only; the only way it could be slower would be if the video card in use has no 3d hardware at all -- in which case you were already screwed).
Wrong.
If you use an LDDM compatible OpenGL ICD in Vista, the system doesn't have to fall back into compatiblity mode and none of the features are turned off.
If you use a WinXP OpenGL ICD in Vista (ie: a driver that doesn't have the goo to support virtualization of the graphics hardware), the system falls back to "compatibility mode" and turns off the stuff that requires virtualization of the hardware.
Expecting it to work differently is like expecting an s3-virge card to play quake3 at 60fps.
What a bunch of bullshit!
>1.This monopoly means you have to tread very carefully not to fall foul of competition law.
Who does NOT have to do that?
I thought laws apply equally to both convicted and non-convicted entities.
>2.This means that the EU political center is much further to the left than the US.
Companies, not governments, spend on Windows *probably* because it helps them get shit done.
> 3. European governments are starting to wise up that transfering as much as 0.3% of GDP to the United States in Windows licenses is not a smart move.
First, those percentages aren't controlled by the government (except to a small extent). So what they think is irrelevant.
And yes, let's switch everyone to non-commercial Linux distros and lose 1% of GDP due to lower productivity!
And even if they switch to Red Hat or Novell, the money's still gonna flow in the same direction.
>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.
You're plain wrong. It's going to depend on India and China.
>Linux is quickly becoming intrenched in these countries
What the fuck do you know? Do you live in any of those countries?
>these companies can't really afford to prop up the American economy.
"These companies" don't give a shit about the American economy. They buy computers and software to have the optimum means of making money. As it turns out, currently Windows (especially on desktop) is an okay choice.
Before they had probably tried OS/2, before that calculators and even the pencil/paper bundle - too fucking bad, it didn't work out.
Perhaps later they might try some other OS, but to think they're going to get something for nothing is ludicrous. Nothing is free - they'll have to spend more on support and training, so I don't think that overall they can save much (especially considering the piracy levels - they pay very little for the MS software) before 2010.
If you'll note, I was responding to a question about what the EU could do if Microsoft pulled completely out of the EU - and my solution is a perfectly valid governmental response to what would be a stupid childish gesture on Microsoft's part. I wasn't talking about a complete ban on all forms of intellectual property.
Also, since the ban would only be on _Microsoft's_ IP, I highly doubt any kind of trade war would start. All other patents & copyrights would still be honored. In such a scenario (MS declaring that no one in the EU was allowed to use its products), I'm pretty sure that most people would say that Microsoft was asking for it by acting so arrogantly.
Only a small group of people within the EU legislative body keep trying to get patents passed, even against the wishes of the more populist legislative bodies & the general populace. That hardly shows a great deal of preference toward software patents, and if Microsoft showed them how destructive an IP company could be by trying to stop them from using any of its products, I would guess that popular support for ANY kind of IP would go downhill really fast.