Yes, you can do your OpenGL programming on Ubuntu. OpenGL 2 is effectively a superset of OpenGL ES 2, so if you stay within the confines of the ES features, you'll be fine. Mesa also supports the ES2 profile, so you could have a look at that. But if you want to write for mobile devices, having access to one will serve you well.

Since you don't have a mobile device at the moment, I would focus on general OpenGL programming to start and get the basic concepts down, since they will be the same whether you are on PC or a mobile device.

If you go to http://www.reddit.com/r/opengl and look on the right side, there are some really good tutorials that can help you learn modern OpenGL programming.

Its definitely possible to learn in 6 months if you are a hard worker and not afraid to ask questions.

If you want to target OpenGL ES (i.e so you can ignore any confusing deprecated stuff) I highly recommend emscripten. It is all desktop based which means you dont need to mess around with iPhone / Android related limitations (like certificates or java/objc shim layers).

You will need to compile or get hold of binaries for...LLVMclangnode.jspython

But then emscripten will take any standard OpenGL Core or ES2 project (including GLUT) and cross compiles to a javascript output which is pretty awesome.

One thing that is a pain is the very long compile times when you use C++. (C is fine). So what I recommend is write your code to work on both OpenGL (with a standard compile) and then use emscripten to test it works with OpenGLES.

It provides Glut, libPNG, SDL and loads of other game related libraries by default.

Edited by Karsten_, 09 February 2013 - 12:29 PM.

http://tinyurl.com/shewonyay - Thanks so much for those who voted on my GF's Competition Cosplay Entry for Cosplayzine. She won! I owe you all beers