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