Analysis: Khronos and OpenGL ARB merge
Tiburon (CA) - At the upcoming Siggraph conference in Boston, the Khronos Group and OpenGL ARB plan to announce merger of the two groups. The union between the Khronos Group and the OpenGL ARB may come as little surprise to the people who know both organizations. And in fact, even for those who have not labored long in the vineyards of graphics, the news might just be chalked up as one more mysterious move by those equally mysterious standards bodies that periodically erupt with some agreement that affects the industry.
In truth, the OpenGL ARB and Khronos have always been related and the two groups share members. However, the two groups have had different ambitions. And, it will be argued, the coming together of the two groups has far-reaching implications for both groups and for digital graphics and multimedia.
Khronos was founded as spinout from the OpenGL ARB. At that time, its mission was to develop subsets of OpenGL for markets other than desktop PCs and workstations. Its first embedded API was OpenGL ES - a 3D graphics API designed for the embedded market which covers a wide gamut of devices such as automotive navigation systems, aeronautic heads-up displays, game consoles, and of course, mobile phones.
Meanwhile, OpenGL was to continue its development of 3D graphics APIs for the computer industry. Currently, it is being used for a wide variety of graphics applications from advanced visualization to game development. Most recently, OpenGL 2.0 has helped fuel the revolution in graphics brought about by hardware shaders. Shaders are programs that can define just about any graphics effects, which can in turn be accelerated by hardware. While DirectX accomplishes many of the same things in the world of Windows applications, OpenGL is an open standard available to all operating systems including Windows and Linux and is built into Apple’s OS X. Its universality offers portability to developers and its openness is an important consideration for many users both within the Windows world and even more so elsewhere.
We are just now seeing mainstream programs put shaders to work. Among the most notable examples is Adobe, which is exploiting OpenGL 2.0 acceleration in its video and graphics programs. The major digital content creation software developers including Autodesk, Apple, and Avid/Softimage are finally taking advantage of the hardware acceleration that has long been available. The evolution of the APIs has finally given them consistent interfaces that they can work with and depend upon across many different platforms. The consolidation of the graphics semiconductor market has likewise vastly simplified hardware acceleration but again, consistent standards based APIs have always been the key drivers for software developers who have consistently looked for the common denominators for their hardware targets.
Time marches on, things change and Khronos has considerably enlarged its portfolio of APIs and its areas of interest. Along the way, the goals of Krhonos and the OpenGL ARB are now re-converging. Khronos has expanded with new APIs including OpenVG for vector graphics acceleration, OpenMAX for streaming media, OpenSL ES for advanced audio. Also, COLLADA, an intermediate exchange format originally created within Sony, has joined the Khronos Group. Collada provides game developers the ability to more easily work within different authoring applications. This flexibility hands developers an ability to create customized content creation pipelines. In addition to added efficiency, Collada makes it easier to retarget applications.
OpenGL ES, a subset of OpenGL and the the graphics API for the new Sony Playstation 3, is proving to impact the graphics industry beyond embedded systems. Consider OpenGL ES as an API that is streamlined enough to be used in mobile phones ; but at the same time it is capable enough to run advanced graphics for state-of-the-art games in high-end consoles. Clearly, an API defining compact graphics that can still satisfy the very high demands of gamers and game developers has value for all computing platforms - especially as users demand ever faster performance on ever lower priced computers.
Synergies at work
It doesn’t take much to see that the news that OpenGL ARB is joining Khronos makes a lot of sense.
There is considerable synergy already at work. In addition to shared members, Khronos’ founders including President Neil Trevett and ARB Secretary Jon Leech, continue as active members on both groups. Now, as the new OpenGL working group in Khronos goes to work on new advanced features for OpenGL, OpenGL ES can efficiently evaluate advanced features that are appropriate for embedded markets - without re-inventing the wheel.
Also, the desktop OpenGL can benefit from the architectural streamlining of OpenGL ES to ensure leaner future OpenGL versions. With both groups operating within the same standards organization their roles can be more closely coordinated giving the OpenGL ARB the opportunity to pursue advanced graphics capabilities that are being used by researchers, universities, the military, and science labs and OpenGL ES, the ability to distill OpenGL down to its essentials for mass-market and consumer applications - both APIs building on a common architectural foundation.
One example of Khronos benefiting from the ARB’s ground-breaking work on the desktop is that OpenGL ES is already paving the way for programmable shader-based graphics on handhelds - just a couple of years after shaders have become mainstream on the desktop. Khronos adopted and refined the desktop OpenGL shading language - GLSL - and streamlined it for embedded systems.
Realizing that the handheld market goes through its programmable revolution, Khronos has decided to create two members of the OpenGL ES family : OpenGL ES 1.1, which is defined by distilling OpenGL 1.5 by removing ultra-high-end features and removing redundancy (for example, there are four ways of drawing the same polygon in desktop OpenGL. Khronos just settled on one.). OpenGL ES 1.X is backwards compatible with OpenGL ES 1.0 and has become the industry standard for embedded fixed-function 3D graphics. Khronos is being careful not to evolve the OpenGL ES 1.X spec too quickly as fragmentation is already a key issue in the handheld space. In fact, there are currently no plans for an OpenGL ES 1.2. At the same time, Khronos also needed to enable the inevitable shift to programmable graphics and took the decision to create a break from OpenGL 1.X with a new programmable version that ruthlessly removed any flab from the API.
OpenGL ES 2.X - OpenGL 2.X is defined relative to OpenGL 2.0 and brings with it programmability for the 3D pipeline using the OpenGL ES shading language. Users can create vertex and fragment shaders, which correspond to the concepts of vertex and pixel shaders in DirectX. OpenGL ES 2.0 eliminates any fixed function transformation and fragment pipeline elements of OpenGL ES 1.1 that can be replaced by shaders. Khronos has attempted to minimize the changes between 1.1 and 2.0 - so the transition for application developers will be as smooth as possible. At the same time it has taken the philosophical leap to break from the past to avoid burdening the new programmable API with a fixed function legacy. Nevertheless, fixed function hardware is going to stay around for some time - and so Khronos is adamant that OpenGL ES 2.0 does not replace OpenGL ES 1.1. It is expected that many systems will ship with both APIs to support all applications. In days when flexibility vies with the realities of limited resources, it often makes more sense better to have two small streamlined APIs than one large bloated one.
Over time, the Khronos group has realized that even as they devise APIs for systems with limited resources, it is not practical to try and develop a one-size fits all API. Thus, there is another member of the OpenGL family : OpenGL SC. OpenGL SC 1.0 is further refined to satisfy the requirements of safety critical applications, for instance for industrial, automotive applications, avionics, and military platforms. It offers a stable, minimized platform for applications that require exhaustive safety certification.
With the merger of the OpenGL ARB and Khronos, OpenGL can take its logical place at the top of this continuum of market-focused APIs that all share the same common architectural foundation. Diverse markets can be serviced with APIs that precisely meet the need of their customers.
Historically, there is one very interesting point of difference between the two groups : The Khronos Group works within a fairly rigid time line and so far the group has met all of its promised milestones in the creation of its standards. The group follows the approach that if something isn’t finished in time, it will go into the next revision. Khronos working groups routinely finalize specifications within a year. The OpenGL ARB has undertaken more fundamental advances in graphics pipeline design and has been more concerned with meeting the needs of its members in the creation of the API that expands the potential of graphics and so work tends to continue until the job is done. Hopefully the architectural firepower of the OpenGL ARB and the laser market focus of OpenGL ES will be blended into a potent force for the 3D graphics industry.
While, on the face of it, the merger of the OpenGL ARB and Khronos might seem obvious, the move represents a big change for the ARB and a potentially revolutionary change in the way standards are developed for the graphics and multimedia industry as OpenGL becomes a family of graphics APIs with variants for just about any device with a screen. The organization of Khronos with its strong commercial focus has given it the ability to react and adapt quickly to changes in the industry.
As it has done so, Khronos has not been satisfied to work solely within the boundaries of 3D graphics. And, when you think about it, this makes sense : Without writing another paper on the history of graphics, the development of 3D graphics in isolation only makes sense from a historical and technical point of view. 3D graphics required a focused effort and the first applications were in science, research, and CAD. But, as 3D graphics has become part of everyday computer living with the evolution of 3D gaming and integrated 3D elements in modern interfaces, it doesn’t make sense to separate it from vector graphics, or other multimedia elements of which it is only one aspect such as video, and audio.
Thus Khronos has now grown to become a single industry body that is able to advance open standards for almost any aspect of advanced, accelerated media processing and as such the group has the potential to not only make life easier for developers but to push the pace of development in the graphics and media industry as a whole.
Kathleen Maher is a senior analyst at Jon Peddie Research, a consultancy specializing in graphics and multimedia based in Tiburon, California. Maher concentrates on graphics software, CAD, and digital content creation.