OpenGL 4.0 brings the very latest in cross-platform graphics acceleration and functionality to personal computers and workstations and the OpenGL standard serves as the basis for OpenGL® ES, the graphics standard on virtually every shipping smart phone.
The OpenGL 4.0 specification has been defined by the OpenGL ARB (Architecture Review Board) working group at Khronos, and includes the GLSL 4.00 update to the OpenGL Shading language in order to enable developers to access the latest generation of GPU acceleration with significantly enhanced graphics quality, acceleration performance and programming flexibility. This new release continues the rapid evolution of the royalty-free OpenGL standard to enable graphics developers to portably access cutting-edge GPU functionality across diverse operating systems and platforms. The full specification is available for immediate download.
OpenGL 4.0 further improves the close interoperability with OpenCL for accelerating computationally intensive visual applications. OpenGL 4.0 also continues support for both the Core and Compatibility profiles first introduced with OpenGL 3.2, enabling developers to use a streamlined API or retain backwards compatibility for existing OpenGL code, depending on their market needs.
OpenGL 4.0 has been specifically designed to bring significant benefits to application developers, including:
- two new shader stages that enable the GPU to offload geometry tessellation from the CPU;
- per-sample fragment shaders and programmable fragment shader input positions for increased rendering quality and anti-aliasing flexibility;
- drawing of data generated by OpenGL, or external APIs such as OpenCL, without CPU intervention;
- shader subroutines for significantly increased programming flexibility;
- separation of texture state and texture data through the addition of a new object type called sampler objects;
- 64-bit double precision floating point shader operations and inputs/outputs for increased rendering accuracy and quality;
- performance improvements, including instanced geometry shaders, instanced arrays, and a new timer query.
Lastly, Khronos has simultaneously released an OpenGL 3.3 specification, together with a set of ARB extensions, to enable as much OpenGL 4.0 functionality as possible on previous generation GPU hardware; providing maximum flexibility and platform coverage for application developers. The full OpenGL 3.3 specification is also available for immediate download.
"The release of OpenGL 4.0 is a major step forward in bringing state-of-the-art functionality to cross-platform graphics acceleration, and strengthens OpenGL's leadership position as the epicenter of 3D graphics on the web, on mobile devices as well as on the desktop," said Barthold Lichtenbelt, OpenGL ARB working group chair and senior manager Core OpenGL at NVIDIA. "NVIDIA is pleased to announce that its upcoming Fermi-based graphics accelerators will fully support OpenGL 4.0 at launch."
"AMD sees the release of OpenGL 4.0 as another major accomplishment for the OpenGL ARB," said Ben Bar-Haim, vice president of design engineering at AMD. "AMD contributes to the Khronos workgroups, and we consistently find that Khronos is successful at developing healthy, thriving, and evolving open standards such as OpenGL and OpenCL."
"OpenGL 4.0 continues the ARB's schedule-driven roll-out of new functionality, and this significant major release enables developers to access leading-edge GPU functionality across multiple platforms with full backwards compatibility," said Neil Trevett, president of the Khronos Group and vice president at NVIDIA. "OpenGL continues to be a keystone in the Khronos API ecosystem, through driving innovation into OpenGL ES and WebGL to bring high-performance programmable graphics to mobile platforms and the Web, and by interoperating with OpenCL to create a seamless visual and compute platform for application developers."