OpenGL and DirectX represent a schism in the graphics world, one that has hampered development at times, and fostered it at others. There are new developments coming, and the schism appears to be closing somewhat.
Once upon a time, there was an honest attempt undertaken by Microsoft and SGI, the original keeper and nurturer of OpenGL, to bring OpenGL into DirectX. That was the ill-fated Fahrenheit project, which eventually ended in failure. That failure truly broke hearts in the industry. The great hope was to create a universal API that worked within and without Microsoft, that would enable graphics development to advance within a common framework. It seemed like an impossible task, and, it was. Microsoft has been accused of having a lack of will and SGI has been accused of fostering a crippling NIH (not invented here) environment. Whatever the reasons, and there are probably several considering all the fallible humans involved, Fahrenheit is just a memory, and Microsoft has put all of its development resources into making DirectX an API for high-end graphics, as well as game development.
Unlike OpenGL which as an open standard is updated and refined through a standards body, DirectX is developed to enhance the development of applications for Windows.
Without the need to work within standards body a and dedicated solely to making Windows look good, DirectX has blossomed. Meanwhile, OpenGL, maintained by the ARB, the architectural review board, has stagnated, with the only advances happening as OpenGL extensions. Among those extensions are graphics capabilities such as ClearCoat, Multisample and tools for integrating video and graphics (some of which have been developed through the OpenML effort, itself a sort of extension to the OpenGL ARB).
Extensions, unfortunately, have not proven to be a viable option for the majority of ISVs who want a consistent platform for development. Instead, a dizzying array of extensions has been developed, and many of them are designed for specialized applications. And the ARB has found itself unable to move OpenGL forward for several reasons, including the quicksand of IP discussions. The frustration comes from companies trying to participate in the ARB (design by committee) and offer technology, but at the same time, protect their IPs. The attempt to reconcile these conflicting iinterests has limited the ability of the ARB to consider new technology for OpenGL. Although the ARB has worked remarkably well over the years, the industry and the pace of consolidation have changed dramatically, putting new pressure on the ARB to keep up, let alone provide leadership.
In fact, the tables have turned. Less burdened by the OpenGL committee-based design approach, DirectX is providing a number of examples for what OpenGL might someday offer. The prime innovation is the promise of programmability included in an API, which, though quite a ways from being widely put to work by developers, is attractive to ISVs and IHVs alike. It means that graphics development can be taken as far as any creative developer wants to take it, and all the effects, looks and features will be accessible by mainstream hardware and software. It also offers that long-sought and oft-promised goal of "off-loading the host CPU." The members of the OpenGL ARB, for the most part, companies also developing products for DirectX, clearly recognize the desirability of furthering OpenGL - the ability to deliver their products across hardware platforms.
- OpenGL 2.0: Programmable, Scalable, And Extensible
- OpenGL 2.0: Programmable, Scalable, And Extensible, Continued
- An Answer Appears To Be At Hand, And The News Is Encouraging
- An Answer Appears To Be At Hand, And The News Is Encouraging, Continued
- Functionality, Continued
- Several Additional Functions And Capabilities Are Being Added, Such As