A Look At OpenGL ES 3.0: Lots Of Good Stuff

OpenGL ES 3.0 is the first GLES update in five years that brings OpenGL ES from the OpenGL 2.1 era to attributes now from OpenGL 3.3/4.2. OpenGL ES 3.0 remains backwards compatible with OpenGL ES 2.0 but there's a whole lot of new features and capabilities within the rendering pipeline, new texture compression formats, GL Shading Language ES updates, and enhanced texturing functionality, among other visual enhancements. OpenGL ES 3.0 was introduced on the same day that the Khronos Group rolled out OpenGL 4.3.
OpenGL ES 1.0 came in 2003, OpenGL ES 1.1 arrived a year later in 2004, OpenGL ES 2.0 emerged in 2007, and now in 2012 we finally have OpenGL ES 3.0. There was a need for an updated OpenGL ES specification with more mobile devices featuring more powerful graphics hardware and more visually-enriched games/applications hitting the mobile space.
Design goals for OpenGL ES 3.0 included providing functionality needed by modern applications, making life better for the programmer, and not damaging the OpenGL ES 2.0 ecosystem momentum.
From the OpenGL ES shader centric view there is a functional superset of the language version 2.00, vertex and fragment shader processors, uniform buffer objects (12 vertex + 12 fragment binding points), transform feedback buffers, multiple draw buffers, texture samplers, and limitations are gone. OpenGL ES 3.0 allows for a subset of OpenGL 3.3 support but without geometry shaders and some "cherry picks" of OpenGL 4.x features.
When it comes to hardware support for OpenGL ES 3.0, the ARM Mali Midgard family was designed to handle GLES 3.0, the DMP SMAPH-S supports OpenGL ES 3.0, there's full support for OpenGL ES 3.0 with all Imagination PowerVR Series-6 graphics processors, and Intel's Sandy Bridge and Ivy Bridge graphics hardware can handle this latest mobile 3D specification. As mentioned already, Intel hopes for OpenGL ES 3.0 in early 2013 for Mesa with some pre-alpha code already being available.
11 Comments