OpenGL

The API is typically used to interact with a graphics processing unit (GPU), to achieve hardware-accelerated rendering.

[5][6] It is used for a variety of applications, including computer-aided design (CAD), video games, scientific visualization, virtual reality, and flight simulation.

The specification says nothing on the subject of obtaining and managing an OpenGL context, leaving this as a detail of the underlying windowing system.

For the same reason, OpenGL is purely concerned with rendering, providing no APIs related to input, audio, or windowing.

The latest OpenGL specification 4.6 was released in 2017 after a three-year break, and was limited to inclusion of eleven existing ARB and EXT extensions into the core profile.

The details of each version are decided by consensus between the Group's members, including graphics card manufacturers, operating system designers, and general technology companies such as Mozilla and Google.

[17] If multiple vendors agree to implement the same functionality using the same API, a shared extension may be released, using the identifier EXT.

The OpenGL Architecture Review Board released a series of manuals along with the specification which have been updated to track changes in the API.

These are commonly referred to by the colors of their covers: Historic books (pre-OpenGL 2.0): OpenGL's documentation is also accessible via its official webpage.

It provided simple, useful features which were unlikely to be supported in contemporary hardware, such as tessellating, and generating mipmaps and primitive shapes.

SGI's competitors (including Sun Microsystems, Hewlett-Packard and IBM) were also able to bring to market 3D hardware supported by extensions made to the PHIGS standard, which pressured SGI to open source a version of IRIS GL as a public standard called OpenGL.

IRIS GL libraries also were unsuitable for opening due to licensing and patent issues[further explanation needed].

OpenGL overcame this problem by providing software implementations of features unsupported by hardware, allowing applications to use advanced graphics on relatively low-powered systems.

Two years later, they also played with the idea of releasing something called "OpenGL++" which included elements such as a scene-graph API (presumably based on their Performer technology).

Over 50 game developers signed an open letter to Microsoft, released on June 12, 1997, calling on the company to actively support OpenGL.

[27] On December 17, 1997,[28] Microsoft and SGI initiated the Fahrenheit project, which was a joint effort with the goal of unifying the OpenGL and Direct3D interfaces (and adding a scene-graph API too).

[29] It initially showed some promise of bringing order to the world of interactive 3D computer graphics APIs, but on account of financial constraints at SGI, strategic reasons at Microsoft, and a general lack of industry support, it was abandoned in 1999.

[31][32] Despite the emergence of newer graphics APIs like its successor Vulkan or Metal, OpenGL continues to be a widely used standard.

These layers allow OpenGL to run efficiently on top of Vulkan and Metal, offering a pathway for continued use or gradual transitions for developers.

[citation needed] It has not received a number of modern graphics technologies, such as Ray Tracing, on-GPU video decoding, anti-aliasing algorithms with deep learning like as Nvidia DLSS[42] and AMD FSR[43] Google's Fuchsia OS, while using Vulkan natively and requiring a Vulkan-conformant GPU, still intends to support OpenGL on top of Vulkan via the ANGLE translation layer.

Such releases define a baseline set of features which all conforming graphics cards must support, and against which new extensions can more easily be written.

This harked back to the earlier tradition of OpenGL setting an ambitious, forward-looking target for 3D accelerators rather than merely tracking the state of currently available hardware.

At the time of its original announcement, Longs Peak was presented as the first major API revision in OpenGL's lifetime.

This would have allowed legacy code bases, such as the majority of CAD products, to continue to run while other software could be written against or ported to the new API.

Longs Peak was initially due to be finalized in September 2007 under the name OpenGL 3.0, but the Khronos Group announced on October 30 that it had run into several issues that it wished to address before releasing the specification.

Most complaints revolved around the lack of communication by Khronos to the development community and multiple features being discarded that were viewed favorably by many.

Other frustrations included the requirement of DirectX 10 level hardware to use OpenGL 3.0 and the absence of geometry shaders and instanced rendering as core features.

Other sources reported that the community reaction was not quite as severe as originally presented,[66] with many vendors showing support for the update.

[67][68] Release date: August 11, 2008 OpenGL 3.0 introduced a deprecation mechanism to simplify future revisions of the API.

Release date: March 11, 2010 Mesa supports software Driver SWR, softpipe and for older Nvidia cards with NV50.

An illustration of the graphics pipeline process
Screenshot of glxinfo , showing information of Mesa implementation of OpenGL on a system