OpenGL ES 2.0 is a lighter version of the desktop OpenGL 2.0 (which is quite old), and stripped of the features that would consume too much power. It then attempts to maintain the perfect balance between visual graphics and battery efficiency for the remaining ones. Keep in mind that the OpenGL ES 2.0 was finished about 5 years ago, and back then the high-end chips used to be the ARMv6 GPU’s and CPU’s like the ARM11 we see now in the lowest end Android smartphones!
But with the latest GPU’s that can support incredibly high resolutions, while still keeping the power consumption low enough on mobile devices, OpenGL is getting quite old and limited. We need something new to advance 3D games on mobile devices, and lucky for us, OpenGL ES 3.0, based on OpenGL 3.2+ and a bit of OpenGL 4.x. The release of the specification will probably happen at SIGGRAPGH 2012, in August.
The good news is that you won’t have too wait too long to have OpenGL ES 3.0 in your device. Basically all the new mobile GPU architectures that are set to launch this year or next will be supporting it. That includes the Mali T604 and Adreno 320 (this year), and Tegra 4, PowerVR 600, and Mali T658 (next year). These new GPU’s will also support OpenCL 1.1 for GPU compute, so OpenGL ES 3.0 together with OpenCL, should allow developers to create some very impressive mobile games by next year.
Since WebGL is also based on OpenGL ES 2.0, I’m expecting to see an update and a transition to OpenGL ES 3.0 for WebGL,as well, although they’ll have to make sure that AMD, Nvidia and Intel are supporting it in their latest drivers first (on the desktop). Since Android 5.0 is launching this fall, it will hopefully support OpenGL ES 3.0 natively, so all the new devices coming into 2013 can make use of it by default.
There should be a new version (3.0) of GLBenchemark released by fall, that will make it easier for us to compare OpenGL ES 3.0 devices, and give us more accurate information about the new GPU’s performance.