- 1 Early history
- 2 Extensions and their Relevance
- 3 OpenGL and Direct3D
- 4 Differences between OpenGL and Direct3D
- 5 Facts and myths
- 6 Present and Future
IrisGL, a proprietary graphics API, is the precursor of OpenGL. Developed by Silicon Graphics Inc. (SGI), the computer graphics market leader back then, IrisGL was used as the starting point of an open standard for computer graphics that would save time porting applications by avoiding direct hardware access. After SGI cleaned up IrisGL and opened up the standard to other companies, OpenGL was born.
In 1992 the OpenGL Architectural Review Board (OpenGL ARB) was established. The OpenGL ARB is a group of companies that maintain and update the OpenGL standard.
Extensions and their Relevance
OpenGL and Direct3D
There has been a great dispute as to which implementation is better than the other, with no conclusive answer. Both APIs are used to do the same effect, and disputing which one is faster or produces better results is an unnecessary debate. Also note that Direct3D is part of DirectX, and comparing OpenGL to DirectX has no real meaning.
Differences between OpenGL and Direct3D
OpenGL is an open standard, meaning its details are available to anyone who wishes to implement it. As referred in the introduction to OpenGL, several parties are involved in shaping the evolution of OpenGL. Direct3D is proprietary software, meaning its owner (Microsoft) is the only one with access to its details, also the only entity able to change the course of its evolution.
OpenGL is multi-platform. Nearly every computer device has an implementation of this API. A graphics engine written with OpenGL could (theoretically) run on any of this hardware (PC, MAC, game consoles, cell phones...). DirectX is Microsoft only. Engines coded in DirectX can only run on Microsoft's operating systems.
Facts and myths
Direct3D is faster/slower than OpenGL
On the same conditions, both implementations will run at the same speed, since they are both implemented by the same graphics driver. Any performance differences are based on faulty graphics driver and not the API itself. Often, comparisons of games (such as Enemy Territory or the Unreal series) running in Windows with Direct3D and on Linux with OpenGL state that one is running faster than the other, but this is not a valid comparison, since the environment in which the test is run differs.
OpenGL has been surpassed by Direct3D and has no future
This is the same as saying that there shall be no more operating systems other than Microsoft's. As long as there are several operating systems (not only for computers), OpenGL will exist.
OpenGL is more/less powerful than Direct3D
Again, both implementations depend on the graphics driver. Both implementations will always have the same functionality with the same hardware.
Present and Future
In 2003 the first OpenGL ES specification was released. OpenGL ES is a subset of OpenGL designed for mobile phones, embedded devices and video game systems.
In 2004 the OpenGL 2.0 specification was released, including the GLSL (OpenGL Shading Language) specification.
In August 2008, the OpenGL 3.0 specification was released.