OpenGL 3.0 Spec Released

State-of-the-art OpenGL 3.0 API and GLSL 1.30 shading language specifications on all major platforms


August 15, 2008
URL:http://www.drdobbs.com/web-development/opengl-30-spec-released/210100264


The Khronos Group has released the OpenGL 3.0 specification, bringing new functionality to the open, cross-platform 3D graphics acceleration platform. OpenGL 3.0 includes GLSL 1.30, a new version of the OpenGL shading language. The OpenGL working group has also defined a set of OpenGL 3.0 extensions that expose potential new functionality for the next version of OpenGL that is targeted for release in less than 12 months, and a set of extensions for OpenGL 2.1 to enable much of the new OpenGL functionality on older hardware. Additionally, OpenGL 3.0 introduces an evolutionary model to assist in streamlining the specification and to enable rapid development of the standard to address diverse markets.

The OpenGL 3.0 specification lets developers tleverage state-of-the-art graphics hardware, including many of the graphics accelerators shipped in the last two years both on Windows XP and Windows Vista as well as Mac OS and Linux. According to Dr. Jon Peddie of Jon Peddie Research, a leading graphics market analyst based in California, the installed base of graphics hardware that will support OpenGL 3.0 exceeds 60 million units. AMD, Intel, and NVIDIA have made major contributions to the design of OpenGL 3.0 and today all three companies announced their intent to provide full implementations within their product families. Additionally, the OpenGL working group includes the active participation of leading developers such as Blizzard Entertainment and TransGaming that have played a vital role in ensuring that the specification meets the genuine needs of the software community.

OpenGL 3.0 introduces numerous new features including:

The new version of the OpenGL Shading Language, GLSL 1.30, provides front-to-back native integer operations including full integer-based texturing, integer input and outputs for vertex and fragment shaders and a full set of integer bitwise operators. It also improves compatibility with OpenGL ES, adds new interpolation modes, includes new forms of explicit control over texturing operations, provides additional built-in functions for manipulating floating-point numbers and introduces switch statements for enhanced flow control within shader programs.

The OpenGL working group has also released a set of extensions to OpenGL 3.0 that can be immediately used by developers and, after industry feedback, will potentially be included in the next generation of OpenGL targeted for release in less than 12 months. These extensions include geometry shaders, further instancing support, and texture buffer objects.

Khronos also released a number of extensions to OpenGL 2.1 which enables some of the new features in OpenGL 3.0 to be used on older generations of hardware. These extensions include enhanced VBOs, full framebuffer object functionality, half float vertices, compressed textures, vertex array objects and sRGB framebuffers.

Additionally, OpenGL 3.0 defines an evolutionary process for OpenGL that will accelerate market-driven updates to the specification. The new OpenGL API supports the future creation of profiles to enable products to support specific market needs while not burdening every implementation with unnecessary costs. To avoid fragmentation, the core OpenGL specification will contain all defined functionality in an architecturally coherent whole, with profiles tightly specifying segment-relevant subsets. OpenGL 3.0 also introduces a deprecation model to enable the API to be streamlined while providing full visibility to the application developer community, enabling the API to be optimized for current and future 3D graphics architectures.

Finally, the OpenGL working group is working closely with the newly announced OpenCL working group at Khronos to define full interoperability between the two open standards. OpenCL is an emerging royalty-free standard focused on programming the emerging intersection of GPU and multi-core CPU compute through a C-based language forheterogeneous data and task parallel computing. The two APIs together will provide a powerful open standards-based visual computing platform with OpenCL's general purpose compute capabilities intimately combined with the full power of OpenGL.

"OpenGL 3.0 is a significant evolutionary step that integrates new functionality to ensure that OpenGL is a truly state-of-the-art graphics API while supporting a broad swathe of existing hardware," said Barthold Lichtenbelt, chair of the OpenGL working group at Khronos. "Just as importantly, OpenGL 3.0 sets the stage for a revolution to come -- we now have the roadmap machinery and momentum in place to rapidly and reliably develop OpenGL and are working closely with OpenCL to ensure that OpenGL plays a pivotal role in the ongoing revolution in programmable visual computing."

Terms of Service | Privacy Statement | Copyright © 2024 UBM Tech, All rights reserved.