Call to Action: Ensure that OpenGL remains a first class API under Windows Vista

Please read what’s posted on the OpenGL future suggestions, I got a reply that D3D reflects what’s implemented in silicon, is that true?

glfreak… would you please bring your rabble-rousing to an immediate end? if you’d like to immerse yourself in a symphony of petty bickering, start a new thread, far, far away, in a snow covered, moonlit glen. bring corky along, you could build a fire and sing songs.

This thread is for OpenGL, defend OpenGL, and promote OpenGL, not to rush on any one who tries to do so by whatever way. Those guys defending MS and their good looking platform should go out and find some otherforum to worship MS things.

Originally posted by glfreak:
This thread is for OpenGL, defend OpenGL, and promote OpenGL, not to rush on any one who tries to do so by whatever way. Those guys defending MS and their good looking platform should go out and find some otherforum to worship MS things.
Yeah that’s true. Being this an OpenGL forum, i would expect people would defend OpenGL, but the opposite happens :eek: , go figure …

Anyway, thanks bonehead for the trip suggestion but if somebody has to go far, far away from this forums are people not defending OGL. If you don’t even care to criticize my points please don’t bother to include my name on your posts because it’s pointless.
You seem to be on the other side of the fence and running further away …

The arguments defending M$ are very weak, as they are based in the hope M$ has good intentions. The fact is - and some people are not smart enough to grasp it - M$ attitude is against the existence of OGL. So, please stick to the facts and try to post a more objective set of arguments.

We can make endless posts about trying to find a way to change M$ mind, but i bet my left hand it won’t happen, it has never happened but with the application of law and justice. The only way for M$ to change its mind before vista is ready, is to show M$, that their users are not happy with the situation, not complying with the situation.

Croky

I would take a moment to thank Korval for his instructive to-the-fact point of view. Really.
When I started to hear about OpenGL on Vista it was like OpenGL will be doomed. Now I understand more clearly what is all about.
Sure the OpenGL/Vista/Aero problem is still here but I hope IHVs will be able to get valuable info on how to make OpenGL and Aero work together. For now it’s up to Microsoft to make this happen.

So let’s keep constructive :slight_smile:

From Korval

But then Microsoft remembers that they have this OpenGL ICD mechanism. The ICD mechanism works completely differently from AppleGL or D3D. When an ICD is active, it hijacks the system; it takes total control of the window and external windows can’t even so much as talk to that window normally.

If I understand what you said here, it means that Aero is only disabled for the ICD-enabled window and NOT for the whole desktop ??

@haust
As soon as ICD is loaded, COMPLETE Aero desktop is turned off. It seems that MS provided D3D wrapper just to make their intention less noticed by developers. If they do it, then they should do it right together with IHVs, instead of making excuses and half way solutions. But it is Microsoft, why make things right when you can make them wrong, earn more cash and cripple open and portable 3D standard on long term bases. And you should read the whole topic, there was discussion about this and almost all aspects that MS “reasonable” decision is doing to GL.

MS why don’t you drop out your emulated D3D version of GL and instead give info to IHVs? It will cost you less, and everybody will be happy, like with XP – unless majority of developers is right and it is your policy after all (monopoly driven business aiming to extract maximum cash from users and kill out any technology that is not under your control).

Ok thank actionGL.
Then if the whole desktop is affected I guess having W2K/WXP visual experience on Vista won’t please lots of people…
Anyway as I said before IHVs need to talk with Microsoft to make OpenGL and Aero work at the same time…

Sure the OpenGL/Vista/Aero problem is still here but I hope IHVs will be able to get valuable info on how to make OpenGL and Aero work together. For now it’s up to Microsoft to make this happen.
Of course, this is the most reasonable level of action, but where is the OGL community in this scene ? After all, aren’t we here to Ensure that OpenGL remains a first class API under Windows Vista ?

The community can organize and start mailing IHVs and M$. I will predict a more open attitude from IHVs and i believe that should be the main concern as for now. IHVs can then persuade M$ to change its plans and shift this situation to a more favorable position for OGL, a “real” OGL.

It is a fact this is a problem, it is a fact that M$ originated the problem, it is a fact that M$ does not want to solve the problem with IHVs, it is a fact that the best that M$ came up with will cripple OGL, it is a fact that Win developers working with OGL will be negatively affected, it is a fact that due to OGL portability, other OSs will also be hit as OGL is their main 3D API, and i assume - with a high degree of certainty - that without developers, there’s no future but only a decaying API.

How many more facts do we need for people to stop assuming a heavenly M$ attitude towards OGL ?
Such possible attitude is obviously clouded due to such facts.

Croky

According to the following article Microsoft is dropping hardware support on Vista for all older versions of DirectX prior to Vista’s DirectX 10.

http://www.theinquirer.net/?article=25902

This article hammers home the point that OpenGL is the only graphics API that has provided the kind of longevity, performance and stability even among different versions of Windows. It is critical the OpenGL remain a First Class API on Windows. It is critical that the IHVs be given the information that they need to write first class ICD’s to allow high performance and stable support for OpenGL.

Korval may jump in to bash and ridicule the importance of some very critical industrial applications. However, the undeniable fact remains that those industrial applications are critical to the long term welfare of every human on the planet. Those apps design machines, oil refineries, industrial plants, run medical imaging and diagnostic devices, etc. We need a first class graphics API with the longevity and stability of OpenGL to support those applications. Performance and quality are of the utmost importance in supporting such time critical applications. These apps have to deal with massive amounts of real time data. Poor or unstable performance may mean slowing down and delaying the completion of critical machinery or facilities like oil refineries and vaccine plants.

Abstract ideas: Does it matter if these machines and facilities are delayed due to poor graphics support which slowed the completion of the complex design effort? Does it matter that a delay of a few weeks or months kept life saving vaccines off the market during an epidemic? Concrete answer: It won’t matter to you unless you are affected by it. As long as there is electricity to run games, most people probably won’t care.

Microsoft should be proud to do their part and support these critical Windows business applications with a high performance, reliable and stable version of OpenGL.

Microsoft is unable to provide backward compatibility for its own API. I don’t know what to say. OpenGL is backward compatible since its beginning. IHVs and ISVs should not take this for granted, it seems that GL is the only API that provides stability and reusability of code. It would be funny to write professional application and change its graphic core each time MS release new version – think about it.

:frowning: as i stated on page 6 of this forum:
it is VERY IMPORTANT to be able to write 3d applications (NOT GAMES) to run in multiple windows. i do know what i’m talking about. if ms stops gl from working well in the windows environment, that WILL make a serious problem for future apps! :mad: :mad: :mad: :mad: :mad:

Originally posted by A Developer:
Korval may jump in to bash and ridicule the importance of some very critical industrial applications. However, the undeniable fact remains that those industrial applications are critical to the long term welfare of every human on the planet. Those apps design machines, oil refineries, industrial plants, run medical imaging and diagnostic devices, etc.
SNIP

Your argument is ridiculous because it’s always possible to have an alternate solutions.
The most obvious is to not upgrade to Vista.
Even if they are running Vista, why would Vista’s visual effects matter for designing machines?

We don’t need arguments at all.
Do you want Vista’s effects to work while a GL app is running? Yes or no?

It’s as simple as that. You are a customer of MS when you buy Windows, you are the boss.

Just a question: Will disabling composite futures of Aero stop some application working? Or it is completely transparent and the only thing that I loss in OGL mode is screen fancy effects?

Having “old-looking” desktop is OK. But if I can’t run Maya and some other App at same time — this is a huge problem.

As long as you can render with OpenGL in an off-screen buffer, and then have this copied without too much of a penalty to a DirectX/WGF/whatever texture/bitmap, then there is theoretically no issue about Aero or MS limiting capability or not, no? (this copy only has to happen at VSync’s rate).

I mean, you don’t really have to have Windows (the OS) manage the ICD stuff, IHVs could agree amongst each other and provide that ICD mechanism (IIRC this was discussed in an ARB meeting around the OpenGL 2.0 release). Would also give an opportunity to clean up the current pixel formats interface mess and have something cleaner/simpler to load and initialize OpenGL.
Developpers would change the dependency to ‘OpenGL.ARB.DLL’ instead of ‘OpenGL32.DLL’ and adapt the initialization code, bypassing MS OpenGL support completely. For IHVs, the issues would revolve around getting OpenGL to run alongside DirectX, and getting some efficient pixel data transfer between OpenGL buffers and whatever constitutes MS’s latest texture/API in whatever is the day’s fashionnable presentation layer.

I’m all for severing the ICD & OpenGL mechanisms from MS’s control, and I’m pretty convinced this whole “let’s cripple OpenGL and DirectX9” is not something MS can be influenced about. It’s part of their new strategy of obsoleting development tools and APIs on a regular fashion.

Originally posted by V-Man

Your argument is ridiculous because it’s always possible to have an alternate solutions.
The most obvious is to not upgrade to Vista.
Even if they are running Vista, why would Vista’s visual effects matter for designing machines?

Oh dopey me. Not upgrade to the latest OS? Gee why didn’t I think of that? Lets see that would mean: no upgrades, no new drivers for new hardware, no up to date SDKs, no security fixes, etc. New machines which may come with only the new OS could not be used for the product. Drivers for new hardware are not always available for the older OS’s. Orphan your software product on an older OS so that it dies and your entire investment is lost. Great idea! (Not).

As far as the eye-candy special effects, they don’t matter to business users. But, the point is why can’t the two features co-exist and why isn’t Microsoft sharing the information with the IHV’s so they can make it work?

Comments on your previous posts: the comment about “just execute a different code path” if the feature is not available, indicates that you didn’t understand (perhaps deliberately) the point of trying to keep software development, maintenance, certification, support and documentation costs down while still keeping the product consistent, full featured and fully usable by most users across a wide variety of hardware. Sure, you can always write the code yourselve. But, the “other code path” has to be designed, developed, implemented, tested, documented and supported. The expense of this process can really add up. The point of providing the best possible API, like OpenGL 2.0 as the base version supported natively by the OS is that all features would be available to all users regardless of their hardware. Some users would not get a hardware accelerated feature, but they would get the feature. All they have to do is upgrade the OS not all the hardware. The cost consideration for the end user is important to business users who are typically on a 3-4 year hardware, replacement cycle. For schools the replacement cycle is even longer, 4-5 years. Money for hardware upgrades is difficult to come by. Some of the older hardware may not be upgradeable to the latest and greatest addons. (Wrong bus, no slot on the motherboard, card won’t fit in the case).

Your previous comment that “Microsoft wants everyone to have a good card” raises two questions:

  1. Since Microsoft “wants” everyone to have a good card, is Microsoft going to buy one for each of the 100 million or so PCs on the planet? And certify and support every single PC on the planet so that it works on Vista? That’s mighty generous of Bill but then Microsoft does have deep pockets…-)
  2. Since you “know” what Microsoft wants, does that mean you are a Microsoft employee?

I heard of DirectGL, J.Carmack in one of his interview, and I think this is the proper name for what’s MS implementing as GL on top of Direct3D.

One goodie about OpenGL is it’s lower overhead in terms of programming (elegant API) and in terms of it’s implementation (direct to the metal).

One goodie about DirectX is it’s clean (no nead for extensions) and most importantly consistency, that it’s guaranteed to behave similarly across different cards/hw.

I’m now considering switching to OpenGL, sorry but I left with no choice.

A Developer, those are valid choices. There are some people/corporations/schools that don’t need the latest.

Originally posted by A Developer:
As far as the eye-candy special effects, they don’t matter to business users. But, the point is why can’t the two features co-exist and why isn’t Microsoft sharing the information with the IHV’s so they can make it work?
Maybe you should ask them. That’s the point of this thread.

Originally posted by A Developer:
Comments on your previous posts: the comment about “just execute a different code path” if the feature is not available, indicates that you didn’t understand (perhaps deliberately) the point of trying to keep software development, maintenance, certification, support and documentation costs…
That’s what some companies do. If the HW doesn’t support MMX, then use another path.
If the HW doesn’t support cubemaps, then use another path.
It is my understanding that you want a software emulation for your clients that don’t have the right HW.
Korval suggested that you use Mesa in this case.

Is there anything I misunderstood here?

Originally posted by glfreak:
One goodie about DirectX is it’s clean (no nead for extensions) and most importantly consistency, that it’s guaranteed to behave similarly across different cards/hw.
It’s not clean. You need to check caps bitfeilds.
Beeing extensionless prevents a programmer from using specific features of the HW.

Hi everyone,

I believe that OpenGL will be around as long as Linux, Macs, Sony, and John Carmack support the API. I just started programming in OpenGL, and I think it’s fantastic–extremely powerful with a decent learning curve. Without it, Direct X would be a piece of crap by now if it wasn’t for OpenGL setting the standard.

With that in mind, what does Xbox 360 exactly support? I know it uses something called XNA. But is that basically Direct X or WGF? What about the Nintendo Revolution? Since it uses the IBM processor, perhaps it uses OpenGL as well. Thanks!

-ctophil

Strange.
I install Windows Vista ™ Beta 1 (Build 5112).
After installation ‘Install Supplemental Drivers’ automatically starts and install nVidia drivers 71.84.
Aero style by default still activated.
Driver says that I have DirectX version 8.1
OpenGL Renderer: GeForce 6800 GT/AGP/SSE2/3DNOW!
OpenGL Version: 1.5.3