Contact Information

User Tools

Latest Visitors

Posts I've Made

Seeing as OpenGL ES 3.0 spec was just released, I thought, "Why would I learn ES 2 when I can just learn the fully PC-compatible ES 3?"

OpenGL ES 2.0 is a good starting point because it is forward compatible with OpenGL ES 3.0, meaning the applications you develop for OpenGL ES 2.0 will work (with minor modifications in the vertex and fragment shading code) on OpenGL ES 3.0, as well as desktop OpenGL 2.1, OpenGL 3.x and OpenGL 4.x.

So, how would I learn it, when the specification was just ratified fairly recently, read the specification?

If you have a graphics card that supports OpenGL 4.3 (NVIDIA has released OpenGL 4.3 beta drivers), you can use an OpenGL ES 3.0 emulator. The Adreno 3.0 SDK for Windows and the Mali Developer SDK for Windows include an OpenGL ES 3.0 emulator. If you do not have an OpenGL 4.3 compatible graphics card, you could artificially restrict yourself to the OpenGL 3.3 core API to get an idea of what OpenGL ES 3.0 programming would be like.

If you are doing mobile development, OpenGL ES 3.0 for the iPhone likely will not be available until iOS 7 next fall, possibly later (Apple didn't support OpenGL ES 2.0 until 2 years after it was released in 2007). For Android, it's said to be already available from select vendors who sell debugging devices, but it probably won't be available for the mainstream user until early next year.

And, while I'm at it, how do you program with OpenGL? I realize that it is a specification and not a full API, but I can't say I know anything about how to implement it.