Forgot your password?
typodupeerror

OpenGL Spec Now Controlled by Khronos Group 245

Posted by ScuttleMonkey
from the passing-the-torch dept.
99BottlesOfBeerInMyF writes "According to a recent press release, the OpenGL Architecture Review Board has voted to transfer control of the OpenGL API standard to the Khronos Group, an industry working group that seems mostly known for its focus on mobile applications. Apple Computer has also just joined the group, presumably because of their interest in OpenGL for the OS X platform. I wonder what affect, if any, this will have upon the future development of the OpenGL standard."
This discussion has been archived. No new comments can be posted.

OpenGL Spec Now Controlled by Khronos Group

Comments Filter:
  • Kronos? (Score:5, Funny)

    by Eideewt (603267) on Tuesday August 01, 2006 @04:50PM (#15827576)
    I can't believe I saw this and thought we were talking about Klingons until my brain caught up.
  • by Anonymous Coward
    I can't make up my mind what affect it will have ...
  • Great! (Score:3, Insightful)

    by Gr8Apes (679165) on Tuesday August 01, 2006 @04:51PM (#15827588)
    Anything that helps OpenGL and provides drivers for it will be welcome. May it prod developers to write more OpenGL games (mainly) and thus make porting easier.
    • Re:Great! (Score:4, Informative)

      by TheRaven64 (641858) on Wednesday August 02, 2006 @06:26AM (#15830507) Journal
      The problem with OpenGL hasn't been the drivers, it's been the fact that it took ages to promote extensions into the spec. The process for getting something added to the spec is something like this:

      1. Vendor (e.g. nVidia) creates driver with support for the new feature, called something like NV_NEW_SHINY.[1]
      2. The extension becomes stable (in the API sense) and popular, and the Architecture Review Board adopts it as ARB_NEW_SHINY. OpenGL implementers are encourage to add support for this extension to their version, but are not required to.
      3. The next version of the spec is released, and the features of ARB_NEW_SHINY are now part of the core features, and not an extension. Any conforming OpenGL n.m driver must implement this extension (in hardware or software).
      This has some advantages over the DirectX model. Hardware developers can create new features and expose them to OpenGL developers immediately. DirectX developers have to wait for the next revision from Microsoft to use them. It also has the corresponding disadvantage that, since there is often a relatively long delay between stage 1 and 3, there is a relatively long period when you can't guarantee the presence of a particular feature on a user's card / driver. This means that a lot of effort it required in terms of backwards compatibility. For reference, Mesa supports OpenGL 1.5 and a few extensions, even though OpenGL 2.0 has been out for a few years.


      [1] Note that nVidia actually have more than one namespace for their extensions, depending on how stable they are.

  • What "affect" ** (Score:5, Insightful)

    by just_another_sean (919159) on Tuesday August 01, 2006 @04:54PM (#15827609) Homepage Journal
    I wonder what affect, if any, this will have upon the future development of the OpenGL standard.

    Well reading TFA and not finding Microsoft on either their promoters [khronos.org] page or their contributors [khronos.org] page I'm cautiously optimistic.

    ** affect? effect? I can never keep this one straight either.

    • of course... (Score:5, Informative)

      by everphilski (877346) on Tuesday August 01, 2006 @05:11PM (#15827704) Journal
      ... Because this is a direct competitor to DirectX.

      Although Microsoft has not been openly hostile. They distribute OpenGL with Windows. And although there are concerns that they are "crippling" the implementation they are shipping with Vista (of which I, personally, am skeptical), hardware vendors ATI and nVidia will be shipping the latest versions with their cards.
      • Re:of course... (Score:2, Informative)

        by ProfanityHead (198878)
        They DO NOT distribute opengl with XP. They distributed a D3D wrapper that ran opengl apps crappily.
        It was up to the user to download proprietary drivers for their brand of video card.
        • I'm sorry but the OpenGL model on Windows is an ICD. The default Windows XP for my system shipped with a WHQL nVidia driver (my machine had an nVidia card) that installed and I had OpenGL via the ICD immediately. I didn't have to go anywhere and download anything. This was an install right off the Microsoft CD. Microsoft provides a spec for D3D9 (for example) and hardware vendors implement that themselves, NOT Microsoft. Microsoft does NOT provide the spec for OpenGL, and hardware vendors implement tha
        • Uh, they distributed OpenGL with NT4 and Windows 2000, without any 3d acceleration. Microsoft provided a full and compliant (to whatever version) software implementation of OpenGL at least since NT 3.51, the first version I ever used. Actually, I think it was the last version worth a shit, too, but it doesn't support modern hardware so it wouldn't be an option even if you could get programs to run on it :/

          It's total news to me that the OpenGL layer in XP even has acceleration, not that I don't believe y

      • OpenGL on vista will be running on TOP of DirectX. This means that DirectX will EMULATE opengl although this process in reverse is possible with very little efficiency lost. As an example check out the cedaga project that ports directx games to linux using opengl.
        • Re:of course... (Score:3, Informative)

          OpenGL on vista will be running on TOP of DirectX. This means that DirectX will EMULATE opengl

          So? OpenGL is an API specification, not a processor architecture. If GL-on-DX does what the spec says then it's every bit as much a 'real' OpenGL implementation as any other.
  • by Foofoobar (318279) on Tuesday August 01, 2006 @04:58PM (#15827632)
    If you look at the list of Members you will also spot Panasonic, Toshiba, Softimage, NCSoft and alot of other heavy hitters.

    The fact that Google and Apple are involved gives me hope that people will start making applications for Linux and Macs soon. Also, since DirectX 10 is only available for Vista, this may be the prime time for OpenGL to start stealing some market share.
    • by Quarters (18322) on Tuesday August 01, 2006 @05:17PM (#15827741)
      Also, since DirectX 10 is only available for Vista, this may be the prime time for OpenGL to start stealing some market share.

      What would be so different about the exclusivity of DX10 on Vista as opposed to the exclusivity of DXs 1, 2, 3, 4, 5, 6, 7, 8, and 9 on Win 95, 98, NT (DX3 only), 2K, and XP that makes now the proper time for OpenGL to become dominant?

      DX wins out in terms of "market share" (as if an API can be measured against something like that) becuase of two things...the dominance of Windows in the marketplace and the fact that DirectX has pretty much wiped the floor with OpenGL when it comes to support for contemporary rendering hardware features. Extensions be damned, the OpenGL ARB moves *way* to slowly to be competitive. Maybe the Khronos group will help with that...Lord knows they can't be any worse.

      Will OpenGL have a ratified spec for equivilent DX10 features like geometry shaders by the time DX 10 comes out?

      • What would be so different about the exclusivity of DX10 on Vista as opposed to the exclusivity of DXs 1, 2, 3, 4, 5, 6, 7, 8, and 9 on Win 95, 98, NT (DX3 only), 2K, and XP that makes now the proper time for OpenGL to become dominant?

        The difference would be that none of them REQUIRED you to update all your hardware in order to run it. DX10 requires it. Vista requires it. The Monitor DRM requires it.

        As such, adoption of DirectX10 may be a long time coming. Sure hardcore gamers will probably get a new machin

        • Backward compatibility kills a lot these days, don't you think? Time to move forward with OpenGL, and that's what they did mostly for 2.0. Hope it doesn't stop in mid-run as 1.x did before...
        • by Quarters (18322) on Tuesday August 01, 2006 @05:45PM (#15827916)
          The difference would be that none of them REQUIRED you to update all your hardware in order to run it. DX10 requires it. Vista requires it.

          All of them required you to update if you wanted to use the features. You can't run a DX9 app on DX3 hardware and get the advantages of DX. The necessary transistors aren't on the DX3 board. There's nothing different on the OpenGL side. To run OpenGL 1.x along with you *need* given board. If you don't have it the extension won't work.

          Vista does not require DX10. It runs just fine under DX9. It will ship with both DX9 and DX10. The UI rendering layer is not DX10 specific. I've run Vista on a two year old machine with integrated Intel graphics (pixel shader 2.x, vertex shaders handled by the CPU) and Vista worked 100%, including Aero Glass.

          • Dang, lost formatting. Why doesn't Slashdot have post editing? Anyway, the line, "To run OpenGL 1.x along with you *need* given board. If you don't have it the extension won't work." should read:

            To run OpenGL 1.x along with a given extension that exposes a feature on a given board you need that board installed. If you don't have it the extension won't work in hardware.

            • Dang, lost formatting. Why doesn't Slashdot have post editing?

              Because it would break both the flow of conversations and the moderation system entirely?

              This one should be intuitively obvious to pretty much anyone. Frankly, I don't think ANY message base systems should allow comment editing.

            • And they gear their standards to common architectures rather than brand new requirements forced on manufacturers.

              Whats yer point? The current openGL works on my board from 1997 as well as modern boards.
          • All of them required you to update if you wanted to use the features.


            Funny. Didn't have to update my Win98 box to move to Win2k. Just needed more RAM.

            Didn't have to update my Win2K to move to XP.

            So by all of them... were you talking only Vista or were you merely talking outta your ass?
          • by waveclaw (43274)
            All of them required you to update if you wanted to use the features. You can't run a DX9 app on DX3 hardware and get the advantages of DX. The necessary transistors aren't on the DX3 board.

            In terms of DirectX, you are quite correct. When programming a DirectX game engine you have to query the given hardware capability (hwcaps) for the PC on which your game engine is being installed.

            There's nothing different on the OpenGL side. To run OpenGL 1.x along with you *need* given board. If you don't have it the e
          • Let's try rephrasing it:
            If you're writing a game, and you want it to have 3D features beyond what DX9 offers, but also work on Windows XP or 2K, OpenGL may be the only choice. The advanced features will require the user have appropriate hardware, but only under OpenGL will all its capabilities be accessible.
      • by 2nd Post! (213333) <gundbear@pacbe[ ]net ['ll.' in gap]> on Tuesday August 01, 2006 @07:26PM (#15828443) Homepage
        Well, from my understanding:
        DX3 shipped on NT4
        DX4, DX5, DX6, DX7, DX8, and DX9 ship for Windows 2k
        DX4, DX5, DX6, DX7, DX8, and DX9 ship for Windows XP

        DX10 only ships on Vista.

        So the difference that would allow OpenGL to become dominant is that, at least overnight with the release of Vista, you can install OpenGL on your Windows2k, WindowsXP, and your Vista OSes, whereas a game written in DX10 is only playable in Vista.

        A game coded in OpenGL is therefore open to more users, a bigger customer base, and potentially more profit, than a game coded in DX10. As per support for geometry shaders, I guess it depends on whether the GLSL has it or not, I wouldn't know myself.

        • DirectX 4 didn't ship at all and from what I remember from the time, Microsoft said that they stopped the project when DirectX 5 offered far more changes relevant to developers and the hardware of the time.

          Oddly though all versions of DirectX have a version number starting with 4.0x with an unusual numbering scheme...

          1.0 = 4.02
          2.0 = 4.03
          3.0 = 4.04
          4.0 = N/A - Did it ever really exist?
          5.0 = 4.05
          6.0 = 4.06
          7.0 = 4.07
          8.0 = 4.08
          9.0 = 4.09
          10.0 = Just reports DirectX 10 in current Betas.
        • DirectX 9 games will still run just fine on Vista.
          Expect to see games companies developing for DX9 and targeting Windows 2000, Windows XP, Windows 2003 and Windows Vista for a while yet.
  • by The-Bus (138060) on Tuesday August 01, 2006 @04:58PM (#15827638)
    If this doesn't come out favorably, don't blame me!

    I voted for Kodos.
  • by mrchaotica (681592) * on Tuesday August 01, 2006 @05:00PM (#15827645)

    Part of the reason Direct3D took off (aside from Microsoft's market influence) is that the ARB worked too damn slow and caused OpenGL to lag behind in terms of capability. If Khronos can make decisions faster such that OpenGL can keep feature parity with (or even get ahead of) Direct3D, it'll be great!

    It would also probably help if they form close ties with the people making OpenAL, SDL, etc. so that there can be a big, open, complete solution to compete with the whole of DirectX.

    • That's another powerful force with DirectX is that MS goes and talks with people like nVidia and ATi and finds out what they want out of an API. So not only is DX updated frequently, but it gets the updates that the companies want generally.
      • NVIDIA and ATI are both members of the ARB as well.
        • Well that's good, provided people listen to them. Just "normal members with a vote like anyone else" doesn't really cut it. They start developing new graphics cards long before they ever hit the market, and as time goes on with a design, there's little they can change. So the ARB needs to be receptive to what they are rolling out. If they decide that a given new feature is the way to go, it needs to be implemented quickly. That's not to say the dialogue can't flow the other way as well, OS/game makers decid
          • AFAIK, the vast majority of OpenGL development done recently has been extensions developed by ATI and Nvidia, and then eventually standarized.
            • This is totally true but it's been going on longer than that. We got the multitexture extension from 3dfx, for example. SGI was actually working on it, but they were taking their sweet-ass time, so 3dfx went ahead and implemented as much of SGIS_multitexture as they could conveniently do, and as they needed, and it was used in glquake with the 3dfx minigl driver. Of course, they should have named it something else, since it wasn't the full function. MesaGL also calls it EXT_multitexture since only SGI shoul
      • This is an important point commercially, but it's not just NVIDIA and ATI. You have to think about the whole "ecosystem". The GPU vendors have an interest in driving people to buy the latest and greatest chips. Quality and speed only go so far with consumer applications; at some point you need to add features. Those features are only interesting if games developers can use them to create new titles that people will buy. Thus, the API vendor or standards body needs to work with both communities to develop an
  • FYI (Score:3, Interesting)

    by earbenT (992594) on Tuesday August 01, 2006 @05:01PM (#15827662)
    Sony is also a member of the consortium, and is providing the API suite as part of the PS3 development kit.
  • by Anonymous Coward on Tuesday August 01, 2006 @05:03PM (#15827677)
    Khronos *already* handled most OpenGL related specs, like OpenGL ES.

    On the negative side, this probably means that yes, SGI is going to be asset-stripped and wound up in short order. One must remember that the writing was on the wall a long time ago. Like CBM before them, Microsoft placed a "mole" in an executive position to wreak havoc, and SGI never really recovered from that period of moronic rebranding and windows NT workstations.

    • Like CBM before them, Microsoft placed a "mole" in an executive position to wreak havoc, and SGI never really recovered from that period of moronic rebranding and windows NT workstations. [emphasis mine]

      Evidence, please. Especially for CBM -- Irving and Medhi were selfish gits, but I never heard a suggestion that they were secretly working for Redmond.

      Schwab

      • Anyone who could design a VIC 20 has to either be criminally insane or paid off. And why DID the Commodore 64 disk drives work at about a tenth the speed of the 4040 and 8080 drives they were selling 5-7 years earlier? If that wasn't proof enough of Evil Intent, then answer me this - why has the PIC Chip never been added to the VICE emulator? I think it's because Bill Gates sacrificed a goatse and placed an Evil Curse on Commodore.
        • Anyone who could design a VIC 20 has to either be criminally insane or paid off.

          I dunno about that; I suspect the VIC-20 was designed so that they could make as many mistakes as possible so that they could learn from them when putting together the C-64 :-). I held no love for Atari, but it was clear even at the time that the VIC-20 was way, way below the required standard for power, RAM, and graphics. I think perhaps they thought they were designing a game console with a built-in keyboard.

          And why DID

  • COLLADA (Score:5, Informative)

    by 99BottlesOfBeerInMyF (813746) on Tuesday August 01, 2006 @05:05PM (#15827683)

    I did a little more looking after submitting this article and while I was not familiar with the Khronos group's work aside from mobile applications, it seems they are also responsible for the COLLADA standard Sony is promoting for open exchange of graphics/models primarily for video games. Perhaps with OpenGL, COLLADA, and some multimedia standards all under the same roof, we'll see development directed to be a better alternative to OpenGL aimed at multiple platforms (Windows, PS3, Mac, and Nintendo?) to offset the threat of MS's DirectX development aimed at Windows and Xbox simultaneously.

  • Hopefully this will mean there will be continued improvements to OpenGL, especially to keep up with competing microsoft products. OpenGL should provide cross platform compatability so these apps can run with few modifications on many platforms. Microsoft unfortunately, just cant have this and has been pushing its own technologies and neglecting OpenGL, which is a move designed to lock software onto the windows platform. Microsoft of course cannot tolerate competitition and cohabitating in the marketplace wi
    • Ok I posted this previously(again) but this thread is more on topic with it and would like to see what people think.

      It would be a lot easier for them to port if all games were opengl. I remember way back when John Carmack had his open letter to microsoft on the merits of opengl. Unfortunately, it seems d3d (even though crap back then) has won out in the end. Not that it's better than opengl, it could be now, but that's beside the point. Microsoft saw how big gaming was getting and wanted to tie developers a
  • This might be good (Score:2, Interesting)

    by pestilence669 (823950)
    OpenGL has been stagnate for quite some time. Most of the newer features of 3D cards have only been accessible with their horrible extensions interface. Well, it's not horrible, but it's not ideal either. At a minimum, better support for pixel shaders (nearly a decade old feature) is much desired. Better support for NURBS & subdivision surfaces (without using evaluators) would rock. I doubt that things like this are on the agenda.

    OpenGL, IMHO, has no place on mobile phones... not yet anyway. Poor Java s
    • by 99BottlesOfBeerInMyF (813746) on Tuesday August 01, 2006 @05:19PM (#15827753)

      OpenGL, IMHO, has no place on mobile phones... not yet anyway... How on earth can OpenGL grow if it always has to support the lowest common denominator.

      I agree. Since Khronos already maintains OpenGL ES for phones, hopefully they will not unify them.

      • by modeless (978411)
        In fact, OpenGL ES is also used in the PS3, which is hardly the lowest common denominator of graphics. Turns out that OpenGL ES mostly removes all the obsolete and irrelevant cruft that OpenGL has, while keeping the important modern stuff like shaders. It provides a simpler, more streamlined interface that is more appropriate for pushing polygons on modern hardware in both the low-end and the high-end.
    • CPU's slower than my TI-82 calculator

      Unless your calculator is vastly different than the ones I'm familiar with, that's a bit of an exaggeration, don't you think?

    • by forkazoo (138186)

      OpenGL has been stagnate for quite some time. Most of the newer features of 3D cards have only been accessible with their horrible extensions interface. Well, it's not horrible, but it's not ideal either. At a minimum, better support for pixel shaders (nearly a decade old feature) is much desired. Better support for NURBS & subdivision surfaces (without using evaluators) would rock. I doubt that things like this are on the agenda.

      How much better support for pixel shaders do you want? glsl is a quite ni

      • No, NURBS aren't supported in hardware, but bezier patches are. It would be great if OpenGL supported them as well as some chipsets do. You can't do everything with bezier curves that you can do with NURBS, but you can get pretty darn close.

        Granted, OpenGL extensions aren't that bad, for the reasons you cited. I'm just tired of supporting ATI-specific *and* Nvidia-specific extensions. The vendor-specific junk has got to go.
        • by forkazoo (138186)

          No, NURBS aren't supported in hardware, but bezier patches are. It would be great if OpenGL supported them as well as some chipsets do. You can't do everything with bezier curves that you can do with NURBS, but you can get pretty darn close.

          I've been reading about some of the proposals for "OpenGL 3.0." Apparently, there is talk of a "primitive shader." Haven't been able to find much information about it yet, but it may well allow arbitrary curved surfaces defined by shaders. I could also just be reading

          • Mmm, thanks for the heads up! I heard about 2.1 and 3.0 at an interview with one of the gfx card companies, and didn't know where to look for the actual documentation. These tidbits are hard to come by without being in a company that is a part of the review board/process (even when OGL is much, much more open than DX).
  • Now you wil have to be a member to even see the standard. Even more $ to be certified.
  • by Anonymous Coward on Tuesday August 01, 2006 @05:44PM (#15827912)
    !. Direct3D vs OpenGL:

    Doesn't realy matter, for a couple reasons:
    Only games are written using Direct3D/DirectX. It is very rarely used for anything beyond that. If given a choice no developer would ever use Direct3d for anything.. but if your making games for technically challenged people and your target platform is Windows then writing it to use Direct3D/directX makes more sense since it's more likely to work well in Windows.

    All the major gaming engines already run on Linux. They already run using either OpenGL or Direct3D.. All except HL2/Steam stuff.

    The reason Linux doesn't have more games isn't because of DirectX. It's because of lack of ease of use for OpenGL acceleration and market share.

    Also DirectX/Direct3d is tied directly to the hardware. If your card doesn't support DirectX 9 your not going to be able to run DirectX 9 application.

    For OpenGL it doesn't work that way. It's a programming API that can be accelerated. If you have a card that was designed to accelerate OpenGL 1.x you can still run OpenGL 2.x. It just won't all be hardware accelerated.

    If your programming a 3d application and it's not a game and your not Microsoft.. Then your using OpenGL or OpenGL-based system. Period, end of story.

    2. OpenGL ARB is 'Advanced Review Board'. They create a set of extensions to the current OpenGL standard to create proven/established OpenGL-related stuff that they can then wrap up together and place into the next generation OpenGL standard.

    This is were all that extra stuff goes that people say that OpenGL lacks and DirectX has. OpenGL has a much more formal review system then DirectX/3D has. It needs to be carefull as any standard they create will need to be replicated by multiple people on multiple platforms and be sustainable into the forseeable future.

    Microsoft and Direct3D/DirectX doesn't have to deal with that. They can abtrarially make decisions becasue they only have to worry about one platform.

    3. Kronos group is partially responsable for the OpenGL-EGL extensions which allow for easier OpenGL based displays for embedded devices.

    This is required for a stand-alone XGL-based X Windows server. Current AIGLX (Redhat) and XGLX (Novel) require you to either run a OpenGL-based X server on top of a normal X server (XGLX) or run OpenGL extensions to a normal X server (AIGLX).

    This approach has numerious issues. Instead of making a clean break and going with pure OpenGL system your dealing with multiple legacy drivers that can only do a fraction of what OpenGL can do in addition to OpenGL acceleration drivers.

    To put it another way.. The current driver model for X is broken. Right now we have 2-3 drivers acting on the same video card at the same time and they need to share resources. These drivers come from different vendors. This is technically difficult and doesn't lead to good acceleration or performance.

    Another point:
    Legacy 2D X drivers (EXA, XAA) can only provide 2D acceleration.
    OpenGL 3d drivers can provide 2D AND 3D acceleration.
    OpenGL 3d drivers can provide faster 2D acceleration then what the legacy 2D drivers can do. (due to the nature of the hardware GPU, not so much the drivers)
    Having 2D and 3D drivers at the same time makes things much more complecated then just having 3D that can do everything.
    3D acceleration is a hard requirement for a modern desktop.

    So obviously having OpenGL-based X server is the way to go. And stuff like GLITZ (Xrender replacement) and other things means we can move to a pure OpenGL X server and still keep binary compatability. It's quite a acheivement.

    Now the reason we cna't have a pure OpenGL-based display yet is because OpenGL lacks the API hooks to allow you to control the display and other items like that. There is nothing in OpenGL that says "Set the monitor at this resolution". That has to be handled by other stuff.

    Kronos had to solve this same exact problem for it's embedded OpenGL display stuff. So they created the OpenGL-EG
    • >> but if your making games
      >> your not going to be able to run DirectX 9
      >> If your programming a 3d

      Dude, your is actually spelt you're.
    • All the major gaming engines already run on Linux. They already run using either OpenGL or Direct3D.. All except HL2/Steam stuff.
      HL2/Steam does run under Wine just fine, however.
      Also DirectX/Direct3d is tied directly to the hardware. If your card doesn't support DirectX 9 your not going to be able to run DirectX 9 application.
      Wine certainly proved you wrong here, since it 'translates' DirectX stuff to OpenGL shaders etc.
      • HL2/Steam does run under Wine just fine, however.

        Ok, then a better way to word it would be: HL2/Steam stuff only runs on Win32 (Wine is a Win32/etc layer for linux).

        Wine certainly proved you wrong here, since it 'translates' DirectX stuff to OpenGL shaders etc.

        Microsoft's DirectX/Direct3d implementation (the official one) is tied directly to the hardware. He never said it would be impossible to make an implementation that wasn't.

    • A couple clarifications/corrections:

      Also DirectX/Direct3d is tied directly to the hardware. If your card doesn't support DirectX 9 your [sic] not going to be able to run DirectX 9 application.

      Besides the spelling gaffe (your is the possessive of you, you're is a contraction of "you are"), this statement is not 100% correct. DirectX/Direct3D developers can mandate that certain API features are handled in hardware in order for the application to run, but they can just as easily allow DirectX to emulate in so

      • Typically, if an ARB or other extension is offered by the driver (VBO support, for example...), it's hardware accelerated- typically, the driver suppliers don't bother advertising things that don't have at least a little hardware boost backing them as it makes them look bad. Now, having said this, it doesn't mean that the boost is as much as it ought to be for the OS (i.e. the ATI drivers for their chipsets don't perform anywhere near as well as they ought to on Linux...) so it's still a mixed bag- but the
    • by Assmasher (456699) on Tuesday August 01, 2006 @06:45PM (#15828269) Journal
      (1)Ironically, you yourself appear to "not know a whole lot." There are several reasons that developers use D3D over OpenGL. Personally, if I need cross platform, for example Sense8's WorldToolKit back when I used to work there, I used OpenGL. If I need multi-monitor and/or multi-device hardware acceleration on anything other than an upper end SGI, like what I currently work on, I HAVE to use DirectX9/10 and Win32. There are other reasons to prefer D3D over OpenGL but they are somewhat subjective (i.e. some people absolutely detest the extensions mechanism in OpenGL for example while others don't really care.) Some people like to write simpler code to support multiple rendering paths, et cetera. There are subjective reasons to use OpenGL as well, but this is unimportant, what is important is pointing out that "If given a choice no developer would ever use Direct3d for anything" is a ridiculous and biased statement. Also, if your hardware doesn't support OpenGL 2.0, and your application uses OpenGL 2.0, your application isn't going to run either, so the statements:

      "Also DirectX/Direct3d is tied directly to the hardware. If your card doesn't support DirectX 9 your not going to be able to run DirectX 9 application. For OpenGL it doesn't work that way. It's a programming API that can be accelerated. If you have a card that was designed to accelerate OpenGL 1.x you can still run OpenGL 2.x. It just won't all be hardware accelerated."

      This is VERY misleading. Presuming scenario 1 where the developer (for either D3D or OpenGL) has coded a support for only a particular version of the API, neither API will run partially in software if the driver does not support that level of the API. D3D9 will not run in software unless you're going to use a debugging rasterizer (highly unlikely), and OpenGL 2.0 WILL NOT RUN on a card with a 1.0, 1.1, 1.2, 1.4 driver. Now, there are some 1.4 drivers which were written so that people like myself could write 2.0 code and execute before the hardware was available, in which case the 2.0 distinctions were supported via software emulation, but this was for developers. You're confusing the ability of a specific OpenGL implementation supporting a specification to the maximum of its ability. For example, if a I have an OpenGL 1.4 driver but the card I'm running on doesn't have Hardware T&L, OpenGL's pipeline is quite capable of transparently deciding whether or not it should offload the lighting to the card or doing it in software. This is not the same as some future version of OpenGL running on my old OpenGL card with an old driver.

      "If your programming a 3d application and it's not a game and your not Microsoft.. Then your using OpenGL or OpenGL-based system. Period, end of story" - I certainly hope you're not in a decision making capacity at your job (or that your job is doing something other than writing rendering code) because you're screwing your company over. Right tool for the right job, every time. It's a toolbox not a religious jihad.

      (2)"OpenGL has a much more formal review system then DirectX/3D has" - No it doesn't. Crimony. Do you know what the specification process for DirectX is? You can say they're different, but it certainly isn't less "formal." You could say it is less open, but that's because it isn't an open API.
      • >If I need multi-monitor and/or multi-device hardware acceleration on anything other than an upper end SGI, like what I currently work on, I HAVE to use DirectX9/10 and Win32.

        Why can't you use nvidia on linux with OpenGL? I do dual monitor (seperate X screens, :0.0 and :0.1) and it works well, running OpenGL on both monitors, simultaneously. I suspect I can do it with a single xinerama-style X screen too, but have not tried. Is this insufficient? Why?
    • You mix facts with opinion.

      For example, your argument about the difference of piecemeal acceleartion in OpenGL versus presence or absence of capabilities in Direct X. This is known as the caps bits (or caps flags) argument. You present the factual part, then you skip over some of the intermediate steps and go straight to the (incorrect) conclusion that you can't run Direct X 9 games if you don't have a Direct X 9 card.

      First of all, you can run Direct X 9 games on Direct X 8 cards as long as the games check
  • by QuantumFTL (197300) * <justin,wick&gmail,com> on Tuesday August 01, 2006 @05:46PM (#15827921)
    I wonder how the growing pressures of the mobile market will be on the OpenGL framework, especially with Khronos at the reins. Perhaps there will be more emphasis on procedural methods (to deal with the small VRAM sizes of mobile chips), or better resource usage for power conservation?
  • I just saw The Incredibles again, and I suddenly get the weird feeling the new plans for OpenGL involve rocket-borne, city-ravaging Omnidroids...

To avoid criticism, do nothing, say nothing, be nothing. -- Elbert Hubbard

Working...