Difference between revisions of "History of OpenGL"
Revision as of 06:54, 5 April 2006
OpenGL was first created as an open and reproducable alternative to Iris GL which had been the proprietary graphics API on Silicon Graphics workstations. Although OpenGL was initially similar in some respects to IrisGL the lack of a formal specification and conformance tests made Iris GL unsuitable for broader adoption. Kurt Akeley and Mark Segal authored the OpenGL 1.0 specification which tried to formalize the definition of a useful graphics API and made cross platform non-SGI 3rd party implementation and support viable. One notable omission from version 1.0 of the API was texture objects. IrisGL had definition and bind stages for all sorts of objects including materials, lights, textures and texture environments. OpenGL eschewed these objects in favor of incremental state chabges with the idea that collective changes could be encapsulated in display lists. This has remained the philosophy with the exception that texture objects (glBindTexture) with no distinct definition stage are a key part of the API.
The OpenGL has been through a number of revisions which have predominantly been incremental additiosn where extensions to the core API have gradually been incorporated into the main body of the API. For exampel OpenGL 1.1 added the glBindTexture extension to the core API.
As of this date OpenGL 2.0 uis the latest version and incorporates the significant addition of the OpenGL Shading Language, a C like language with which the transformation and fragment shading stages of the pipeline can be programmed.
Official versions of OpenGL released to date are 1.0, 1.1, 1.2, 1.3, 1.4, 1.5 and 2.0.