I am just learning about OpenGL ES. I was wondering if it's possible to write an application that would work both on the desktop and on mobile devices just by switching out headers and recompiling. I realize there are some differences in OpenGL vs. ES APIs, but if you just used the ES subset and switched out the headers, is it possible? It seems it wouldn't be possible ( or at least not easy ) to do this with JOGL-ES, since they use different package names and even different class names, but it looks like the C implementation used all the same names and namespaces. Any thoughts on this?