Switching between OpenGL ES 1.1 and 2.0 contexts?


In Android or iOS, once I’ve created an OpenGL ES 1.1 context and made it current, is it possible to switch to an OpenGL ES 2.0 context, or is this only achievable by closing and re-opening the entire application?


Much to my considerable surprise, it seems that calling SDL_GL_SetAttribute(SDL_GL_CONTEXT_MAJOR_VERSION, 2) before SDL_GL_CreateContext() successfully creates an OpenGL ES 2.0 context without adversely affecting an existing ES 1.1 context! I wasn’t expecting to be able to create concurrent contexts of different kinds, but it seems to work in both Android and iOS.

I rather doubt that this was ever intended or officially supported (or am I wrong?) but if it works I’m very happy. It means that with some careful context-switching I can support both glLogicOp and shaders in the same GLES program!