Want to read Slashdot from your mobile device? Point it at m.slashdot.org and keep reading!

 



Forgot your password?
typodupeerror
×

Windows Vista May Degrade OpenGL 633

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 discussion has been archived. No new comments can be posted.

Windows Vista May Degrade OpenGL

Comments Filter:
  • by eight and a quarter ( 904629 ) on Saturday August 06, 2005 @02:47PM (#13259058) Homepage Journal
    .. installing it on my amd k6-2/350 with 192mb of ram and 5gb hard drive! yes this is my primary desktop. it runs windows 2000 :-)
  • Re:MS (Score:1, Interesting)

    by BaCkBuRn ( 621588 ) * on Saturday August 06, 2005 @02:47PM (#13259065) Homepage Journal
    "So, when a display driver for OpenGL is loaded, Aeroglass shuts down. First and foremost: This has absolutely no implications for fullscreen games on single monitor setups! So, with that important detail out of the way, let's look at the scenarios where we DO have a serious problem: * Multi-monitor setups * Windowed mode applications" Dude, damn near every 'geek' I know runs a multi-headed setup. Ive been doing it for years... Believe it or not, people with large resolutions like to run mmo's windowed.
  • by AmazingRuss ( 555076 ) on Saturday August 06, 2005 @02:54PM (#13259102)
    ...for different applications, but after this, I'm dropping DirectX, and I will not be deploying Vista ANYWHERE. Fuck MS. Business reality and market share be damned, I will no longer be a participant in the quiet strangulation of any software that isn't Microsoft.

    Sooner or later they will have killed off the medium guys and come for us little guys. I won't give them the rope to hang me with. I'd rather go broke now than get fucked over later with the lube I provided.

    Until this, I was fairly platform agnostic, and I will remain so, with the exception that MS Software is NEVER an option.

    Meet a newly-minted anti-MS zealot.

  • by Dunbal ( 464142 ) on Saturday August 06, 2005 @02:56PM (#13259119)
    Now we know where Microsoft plans to suck in all those extra CPU cycles that everyone has too much of.

          Besides, if graphics performance is degraded, it gives everyone an excuse to buy those new CPUs and $5000 Radeon 83910000 SX FX MX cards that will be coming out, so Microsoft is really "helping the computer industry by promoting technology and innovation". Ugh, did I just say that?

          Never mind the fact that the human eye has a hard time detecting changes above 30 frames per second. Cards are at what, 300 FPS or so now at the top end? Oh MAN, I installed Vista and my frame rate is only 150 now, gotta get a new card...

          I still don't understand why drivers take dozens of megabytes, and an OS fills up a fair fraction of a gigabyte hard drive. Bloatware has been a problem for the past decade, and it's only showing signs of getting worse with the next iteration of Windows.
  • by Stiletto ( 12066 ) on Saturday August 06, 2005 @02:58PM (#13259130)

    Now, now... Before we break out the pitchforks and torches, let's see exactly how MS plays this. The article is already slashdotted, so I'm going to have to do a little speculation.

    If MS goes with a GL to D3D wrapper as a default implementation, but allowing vendors to write their own drop-in driver if they choose, then we get the best of both worlds.

    For a small graphics device shop, maintaining a full ICD is a lot of work. If they had the option of "just do the D3D back-end and you'll get basic OpenGL functionality for free through the wrapper", the problem is solved. In this way, you actually get broader OpenGL support than you would with the current model, where anyone who wants good OpenGL support is stuck with having to implement a full ICD.

    From the app writer's point of view it's also a win. Right now, as an OpenGL developer you have basically two choices: 1. Pick a PFD that goes through the graphics vendor's driver, and accept whatever coctail of driver bugs they never tested for you because you aren't Doom 3, or 2. Pick a PFD that runs your code through the dog-slow MS software path. If we had a 3. Pick a PFD that puts you in the safe but fast GL->D3D path, it would be easier and faster to bring accelerated OpenGL apps to market. I know of several OpenGL apps that purposely pick the software path because of driver bugs which wouuld immediately benefit from such a scheme.

    So in conclusion, if MS is smart about this, they could keep their business focus on D3D, and broaden OpenGL support at the same time.
  • by Lifewish ( 724999 ) on Saturday August 06, 2005 @03:04PM (#13259172) Homepage Journal
    I'm guessing that some of the extra clock cycles go into translating each OpenGL call into DirectX calls, and some goes into redundant processing by the DirectX libraries for stuff that isn't actually needed by the wrapper that's calling it.
  • by cbreaker ( 561297 ) on Saturday August 06, 2005 @03:07PM (#13259189) Journal
    They'll do this, effectively crushing OpenGL on Windows. It will force game/application developers to write windows-only apps instead of cross-platform. OpenGL made is quite a bit easier to do that.

    Then, when the EU or whomever else comes knocking four years later, it won't matter. Pay another few billion dollars and you're scott-free.

    Microsoft has such a huge bank-roll that they could continue to operate like this for a long time, until finally someone says "Microsoft Windows is BANNED." Which would never happen, because they're a monopoly and many people depend far too heavily on it.

  • by Dunbal ( 464142 ) on Saturday August 06, 2005 @03:08PM (#13259195)
    It simply wont make sales in India, China or the South American countries.

          But then again, it never did. Everyone pirates the OS (at least in Central America which is where I am), because the price of the OS is a large fraction (if not all) of monthly income. Microsoft spent money putting Anti-Piracy billboards up around the city (billboards that cost $2000 a month to rent) instead of DUHHH selling the OS a bit cheaper in those markets. Like once you've done your programming it's really costing you a lot more to burn some extra CD's for the 3rd world.

          No, Microsoft corporate think is to start a whole new programming cycle and come up with a cheap but CRIPPLED OS for the 3rd world. Heh.

          The fear is, if they sell it cheap in the 3rd world people in the US will just import the 3rd world copies, and Microsoft will lose out. It's the same argument with cheap medication for the AIDS problem in Africa. Maximizing profit is more important to a megacorp than quality of life, or even life itself, apparently. Yet they sure are quick to outsource when they think they can save a buck. It's ok to make money but once in a while you have to address ethical issues as well and damn the share price. We're all on this planet together.
  • wrong (Score:3, Interesting)

    by william_w_bush ( 817571 ) on Saturday August 06, 2005 @03:25PM (#13259303)
    one of the arguments for dual-cores is that gfx processing is cpu intensive. the unreal guys said transferring the gfx software overhead to the second core could free up something like 30% of the primary core for ai/audio etc.

    it's not trivial. opengl is actually much more efficient in this respect than d3d last i checked. d3d is just easier to program in most of the time, and some of the features come free.
  • by Spudley ( 171066 ) on Saturday August 06, 2005 @03:37PM (#13259361) Homepage Journal
    It will force game/application developers to write windows-only apps instead of cross-platform. OpenGL made is quite a bit easier to do that.

    You know, I never understood why games developers don't just write for Linux (or indeed, any other OS), and then provide their games on a bootable disc.

    You have to have the game disc in the drive anyway for most games, so there wouldn't be any hardship to the user, but it would remove all the issues of what libraries are installed on the host machine.

    It would also remove the need for platform-specific versions for games (especially once Apple starts shipping their Intel-based machines).
  • by mOdQuArK! ( 87332 ) on Saturday August 06, 2005 @03:55PM (#13259494)
    I for sure would welcome a selling ban to microsoft in the EU, but where will my games run on, and my tax return program O-:

    Oh that's easy - the EU could simply declare that, in the EU, all Microsoft products & patches past, present & future are automatically public domain - and that it is perfectly legal for EU hackers or companies to bypass any Microsoft Product Activation schemes. As long as Microsoft made their software available _anywhere_ in the world, EU citizens would have no problems getting working copies of it - and a lot cheaper than any other countries!

    That's one of the big problems about selling a legal-fiction-defined IP "product" like software - if the society enforcing those IP laws decides not to go along, then you're pretty much SOL.

  • Re:Monopoly (Score:3, Interesting)

    by SCHecklerX ( 229973 ) <greg@gksnetworks.com> on Saturday August 06, 2005 @04:10PM (#13259576) Homepage
    That actually is a good point. The stock OpenGL on my linux boxen via Mesa pretty much sucks. But when you use NVidia's drivers, framerates are incredibly fast, even on my aging Athlon 900.
  • Re:MOD PARENT UP (Score:5, Interesting)

    by KillShill ( 877105 ) on Saturday August 06, 2005 @04:48PM (#13259774)
    i thought aero/glass was/is running on direct3d. so in what way does installing an opengl icd from your video card vendor turn off the new UI?

    and no i didn't read the fud article. :)
  • by NanoGator ( 522640 ) on Saturday August 06, 2005 @05:12PM (#13259895) Homepage Journal
    "They can do whatever they want to, include not certifying drivers that don't conform to the new "MSOpenGL Standard" or simply making it a real big pain in the ass to use anything but DirectX."

    They've been trying. It isn't working. You mention that you can 'do anything' in software. You're almost right. You can do anything but prevent somebody else from doing anything. Ask the *AA or any game company trying to enable copy restriction.

    MS can't prevent OGL from running on their OS's even if they put a serious attempt at stopping it.
  • Re:MOD PARENT UP (Score:3, Interesting)

    by mikael ( 484 ) on Saturday August 06, 2005 @05:21PM (#13259934)
    If this really does happen, then it would be because the UI is using texture memory and device context state. Aeroglass would have the common sense to remove itself from texture memory when a DirectX application is running, but wouldn't (want to) have a clue when an OpenGL application is running.
  • OGL on D3D. (Score:5, Interesting)

    by Quasar1999 ( 520073 ) on Saturday August 06, 2005 @06:43PM (#13260377) Journal
    For those of you who have never worked with graphics drivers on windows, let me fill you in on why it doesn't work. Direct3D wants/needs full access to the graphics hardware for it to use hardware acceleration. Ever wonder why two windowed D3D apps run like crap compared to one single full screen D3D app? There's your answer, whenever D3D doesn't have full access, it has to go through a software layer to serialise video card hardware access... that translates to slower performance. Now, throw in OpenGL and you have a huge mess. You have a full screen D3D app (the windows UI), and now you want to run OpenGL via direct hardware access on it in a window? There is no way that the OGL ICD and the D3D drivers are going to nicely co-exist. One is going to have to translate their calls into the other driver's native API. Microsoft made the decision to force OGL to get translated into D3D calls to allow its desktop UI to run natively (ensuring all of windows runs nice and quick) and makes the OGL app take the performance hit. It's not some conspiracy, it's how they got things to work, and trust me, I know first hand how it works. The solution is actually pretty damned good considering the SHIT that graphics card manufacturers do to their cards from a hardware point of view. ATI and Nvidia require their entire pipelines to be flushed everytime you'd switch windows from OGL to D3D, that KILLS perfomrance. Throguh my many years of OGL and D3D experience I can assure you taht there is NO other way of doing this, except by forcing D3D apps to go through a translation layer that maps them to OGL calls, doing the exact same thing except in the other direction. And it makes no sense to give the graphics speed priority to a single app, when all other non-graphics apps will suffer (all standard windows programs will now be rendered using D3D), just think of how pissed people are when a single app hangs in windows today, and other apps are slugish to respond to minimize or restore commands... amplify that ten fold if they would have serialised OpenGL and D3D instead of forcing OGL to go through a translation layer and continue to run D3D natively. MS is evil. Sure, but this is truely the fault of Graphics card manufacturers, NOT MS. They could have made their hardware support both quite easily, but choose to do as little in the hardware as possible, and force the drivers to pick up the slack, well in this case, there is nothing the drivers can do that won't absolutely kill performance, so MS did the logical thing. 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. Just from a marketing point of view, their solution works at 100% the original speed 90% of the time. The other 10% of the time, it can run UP TO 50% slower, in practice it's usually about 15% slower. La-dee-dah... my old ATI 9200 compared to my newer X800 is at least 15% slower anyway, there's the 'performance difference'...
  • by CreateWindowEx ( 630955 ) on Saturday August 06, 2005 @07:35PM (#13260658)
    Actually, most PC games end up being CPU-bound when running at "reasonable" resolutions/AA settings. Due to inefficiencies in it's architecture, DirectX incurs a very high overhead for each batch of primitives, so much so that Microsoft is telling developers to focus on reducing the number of batches per frame to as low as a few hundred for maximum performance. Supposedly this will be vastly reduced in future versions of DirectX.


    Obviously Microsoft has always been trying to drive out OpenGL in favor of DirectX, but I wonder if the existence of the Xbox has given them additional incentive--if they get game developers to use DirectX instead of OpenGL, this not only makes porting to Mac and *NIX much harder, but also makes porting to Xbox360 easier.


    If the "translation" layer doesn't support HLSL vertex and pixel shaders, it will make OpenGL dead in the water for PC gaming. I wonder what this will do to the 3D workstation market, though. Will users of Maya start switching to Macs, or will the next version of Maya use D3D?

  • by Have Blue ( 616 ) on Saturday August 06, 2005 @07:38PM (#13260668) Homepage
    Why don't you just buy a console instead? They already follow the model the parent describes and it seems to be working pretty well.
  • by Keeper ( 56691 ) on Saturday August 06, 2005 @07:49PM (#13260728)
    XP era vendor supplied OpenGL implementations don't support virtualization of the graphics hardware. This isn't a problem when you don't have to share the 3d hardware, but it is a problem when you've got a multi-tasking operating system that uses the 3d to render content for every application running. As a result, WGF has to fall back to the XP era method of composting the display when using a vendor supplied ICD that "takes" the hardware away from the OS.

    In order to enable the "Aero experience", vendors have to implement a LDDM compatible driver and a version their ICD that is compatible with the WGF virtualization model.

    http://download.microsoft.com/download/9/8/f/98f3f e47-dfc3-4e74-92a3-088782200fe7/TWPR05007_WinHEC05 .ppt#273,16,OpenGL [microsoft.com]

    Just like the overhead of multitasking, virtualization of the graphics hardware is not free. The supposed 50% drop in performance is due in large part to the fact that the application doing the rendering no longer has exclusive access to the hardware in question.

    Given that:
    1) most desktop users that "care" about OpenGL performance play games which run at full screen
    2) most desktop users that use OpenGL in a windowed application aren't doing anything very taxing (meaning the cost of the OpenGL=>D3d wrapper isn't important)
    3) most professional users that "care" about OpenGL performance don't care about how "pretty" the UI is and/or don't run Windows
    4) all video cards with support for DirectX but no support for OpenGL will see a performance increase
    5) XP era vendor supplied ICDs still work
    6) Vendors can supply ICDs that support virtualization

    I don't think that anything unreasonable is occuring at all.

    The biggest complaint you're going to see is graphics whores complaining that their framerates go down because they don't have exclusive access to the 3d hardware any longer, and conversely, that they don't get the benefits of virtualization when they do have exclusive access to the hardware.
  • Re:OGL on D3D. (Score:4, Interesting)

    by oliverthered ( 187439 ) <oliverthered@nOSPAm.hotmail.com> on Saturday August 06, 2005 @08:36PM (#13261011) Journal
    Not so fast.... I've been writing a DirectX compatibility layer for linux that does the exact opposite, the best thing is that it can be compiled with wgl and run on windows, that's DirectX running on windows via opengl.

    So, all you need are good opengl drivers on windows and you can run the desktop via my DirectX 9 compatibility layer.

    Take that Microsoft.
  • by An Ominous Cow Erred ( 28892 ) on Saturday August 06, 2005 @09:54PM (#13261380)
    Copyrights are governed internationally by the terms of the Berne Convention, which the European Union member states have signed (the vast majority of them, anyway).

    (I'm writing from a U.S.ian point of view)

    In other words, they're bound by a treaty.

    Our illustrious president has shown no qualms about withdrawing from important international treaties... both signed ones and signed AND ratified ones... Can we expect any other country to care more now?
  • Re:Monopoly (Score:4, Interesting)

    by drsmithy ( 35869 ) <drsmithy@nOSPAm.gmail.com> on Saturday August 06, 2005 @10:26PM (#13261532)
    Before I gave up on Windows as a waste of time, XP had a SCREAMING HISSY over loading a hardware-maker's driver, 'cos it wasn't MS-signed. (Yes, it worked just fine, thank you.)

    This is the quintessential example of how Microsoft can't win, no matter what they do.

    Most Windows crashes are caused by buggy third-party drivers, so Microsoft institute a method of verifying drivers and allowing the end user to see that they are verified. On the other, end users complain because they have to answer a couple of dialogs when installing unverified drivers.

  • Re:bit by bit (Score:3, Interesting)

    by plusser ( 685253 ) on Sunday August 07, 2005 @04:32AM (#13262818)
    I have had a thought about DirectX, and the fact that Apple are transerring from PPC to Intel Processor. I saw a report last week on ZDNET, which was going on about Intel's DRM IC being used on the protype Intel Macs. One thing that was pointed out was the fact that the new Mac hardware runs games and software a lot quicker than the old hardware.

    The upshot is this; the hardware will be virtually identical to a Wintel PC. Effectively the only real difference between them will be the operating system.

    To prevent Apple from gaining from a better operating system, Microsoft are going to have to play every trick in the book. Playing with DirectX and Open GL is one of these tricks, as this could make it more difficult for a software vendor to write 3D graphics software for both platforms.

    The problem is here is that this could seriously backfire on Microsoft, if the insistance on using DirectX uses more processing power against the advantages of integration with the OS. If the public find that the resulting software works better on a lower specification MAC than PC, then Microsoft will have trouble to justify that its operating system is better, especially as Apple will be only need to a charge a slight premium over most PC vendors, for a similar specification system, that is siginificantly more reliable.

    Vista best be perfectly formed on release then!

And it should be the law: If you use the word `paradigm' without knowing what the dictionary says it means, you go to jail. No exceptions. -- David Jones

Working...