OpenGL

OpenGL ( Open G raphics L ibrary) is a specification which defines a API multi platform for the design of applications generating of the images 3D (but also 2D).

The interface gathers approximately 250 different functions which can be used to post complex three-dimensional scenes starting from simple primitives. Because of its opening, of its flexibility in use and its availability on all the platforms, it is used by the majority of the scientific, industrial or artistic applications 3D and certain vectorial 2D applications. This library is also popular in the industry of the Video game where it is in competition with Direct3D (under Microsoft Windows). A named version OpenGL ES was designed specifically for the embarked applications (cellphones, diary of pocket…).

History

The basic specifications and developments were carried out by a team of SGI, after having worked on a first version of a project similar to INRIA. In this team was in particular the very famous Bui Tuong Phong creative of the algorithm of interpolation for the smoothing of shades. The project Fahrenheit, initiative of Microsoft and SGI, tried to unify the OpenGL interfaces and Direct3D. This one brought to the beginning the hope to put order in the world of APIs 3D, but for financial constraints on behalf of SGI, the project had to be abandoned.

The OpenGL specification is currently supervised by OpenGL Architecture Review Board (ARB), formed in 1992. The ARB is composed of companies having a deep interest for the creation of API coherent and largely available. According to the official site of OpenGL, 3Dlabs, Apple, ATI, Dell, Evans & Sutherland, Hewlett-Packard, IBM, Intel, Matrox, nVidia, SGI and Sun Microsystems belongs to the members voters (June 2002). Microsoft, one of the founding members, was withdrawn in March 2003.

July 31st, 2006 at the time of the conference of the Siggraph, the ARB announced its decision to transfer control from the OpenGL specification to the Khronos Group, which dealt already with various OpenGL specifications for the embarked systems and the video Game consoles of which OpenGL ES. Architecture Review Board was dissolved on September 21st, 2006, but for historical reasons, acronym “ARB” was preserved.

Extensions

The OpenGL standard makes it possible various manufacturers to add new functionalities in the form of extensions . An extension is distributed in 2 parts: a file of headings which contains the prototype functions of the extension and the drivers of the manufacturer. Each one of them has an abbreviation which is used to name their new functions and constants. For example, the abbreviation of nVidia (“NV”) is used to define their function owner “glCombinerParameterfvNV ()” and their constant “GL_NORMAL_MAP_NV”. It can happen that more than one manufacturer implements the same functionality. In this case, the abbreviation “EXT.” is used. It can also happen that the ARB officializes an extension. This one then becomes a standard and abbreviation “ARB” is used. First extension ARB was GL_ARB_multitexture.

Libraries

Several libraries is developed starting from OpenGL in order to bring non-available functionalities in the library OpenGL itself: One will note in particular, the library OpenGL Performer, developed by SGI and available for IRIX, Linux and some versions of Windows, which allows the creation of applications of returned real-time.

Implementations

Several implementations of OpenGL (exploiting acceleration 3D provided by the material) exist for Windows, of many stations Unix and Mac OS. These implementations are generally provided by the graphic manufacturers of materials and there are closely dependant. There exists a free implementation of this library, named Mesa, created in 1993 by Brian Paul and which uses the same API one, which allows:
  • to do without the OpenGL license in the majority of the cases
  • to make turn of the OpenGL applications on terminals X which there are in theory inapt (the performances are then poor, but that is better sometimes than not execution of the whole if one does not need to use animation in real-time)

Mesa allows moreover the use of OpenGL on ordinary X-window stations. These stations not having in general functions 3D, one can however use them only for simple models comprising few polygons.

Interest of OpenGL for SGI

SGI each time puts in the public domain the N-1 version of GL, graphic library of GL. Does this approach marketing
  • discourage competition (OpenGL free and being opened, why develop another thing?)
  • dissuades the modification from OpenGL (because any addition would be to start again in the following version of OpenGL)
  • gives to stations SGI a substantial competitive advantage, since GL always has a length in advance on OpenGL.

Uses

Certain software uses OpenGL to manage the whole of their interface, even 2D, like Blender, Google Earth, or the version SGI of X11.

See too

API

Random links:List Heads of State of Afghanistan | Kosmogonia | Rimae Sirsalis | Jean-Baptiste Rousseau | Georges Brassens (tram of Paris) | Champions of France of swimming out of basin of 50 m of the 4x100 m freestyle