Jump to content

OpenGL++

From Wikipedia, the free encyclopedia
This is an old revision of this page, as edited by Maury Markowitz (talk | contribs) at 00:22, 15 November 2003 (new article). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.
(diff) ← Previous revision | Latest revision (diff) | Newer revision → (diff)

OpenGL++ was a set of extensions to the OpenGL 3D graphics system that supported object oriented data structures. The project started as the result of a partnership between SGI, IBM and Intel (and later DEC as well) to provide a higher level API than the "bare metal" support of OpenGL. Work on OpenGL++ ended when SGI decided to partner with Microsoft instead, leading to the Fahrenheit project which also died.

OpenGL++ was intended to offer a selection of routines and standardized data structures to dramatically simplify writing "real" programs using OpenGL. Instead of the programmer having to keep track of the objects in the 3D world and make sure they were culled properly, OpenGL++ would include its own scene graph system and handle many of the basic manipulation duties for you. In addition OGL++ included a system for modifying the scene graph on the fly, re-arranging it for added performance.

Much of OGL++ was a combination of ideas from earlier SGI projects in the same vien, namely Open Inventor which offered ease-of-use, and IRIS Performer which re-arranged scene graphs for increased performance. It was later realized that there was no reason the two couldn't be merged, offering both rapid development and high performance.

SGI had already released one effort to merge the functionality of these two as Cosmo3D. When they then started the OGL++ effort they dropped development of Cosmo3D when it had just reached a beta release, positioning the "front end" package, Cosmo Code, as a VRML authoring tool. It is not clear how closely related the two packages are, as OGL++ was never released. Much of the OGL++ effort appears to have been aimed at defining a flexible scene graph, which would eventually evolve into an important part of the Fahrenheit effort.

In the end there is nothing to show for any of these efforts. Parnerships with Sun Microsystems, Intel and IBM and Microsoft all led to nothing as SGI jumped from project to project. In retrospect its not entirely clear what happened, but the history alone appears to suggest that SGI was simply unwilling to "give up the family jewels", or perhaps simply floating a series of trial balloons. One way or the other the scene graph concept was bounced from project to project, and eventually died in 2000. Today no such standardized scene graph exists, and SGI has all but exited the API world.