Programmable Shader <<interface>> GL <<interface>> GL4 <<interface>> GL2ES2 <<interface>> GL3 <<interface>> GLES2 <<@interface>> GL4ES3 GLContext GLDrawable <<metaclass>> GL2ES3 GL4bcImpl GLES3Impl Mobile final public OpenGL Interfaces Desktop/Mobile Common Interfaces <<interface>> NativeWindow AbstractGraphicsConfiguration Desktop final public OpenGL Interfaces GLCapabilities GLProfile Lifecycle: From the lower right to the top, left step where the GLContext is created with a suitable GL implementation matching the GLProfile. <<interface>> GLBase Common GL Stuff <<@interface>> GLES3 <<interface>> GL2GL3 Capabilities <<@interface>> GL3ES3 0..1 1 chosen 1 requested 1 1 1