The basic frame of OpenGL
Introduction
OpenGL(Open Graphics Library) is a polyglot and cross-platform programming GUI. It will abstract computer resources into OpenGL objects and then abstract operations on resources to OpenGL instructions.
OpenGL_ES(OpenGL for Embedded System) is a subset about 3D graphics APIs.
OpenGL Context
OpenGL Context is a very large state machine that holds various states of OpenGL, and it is the basis for the execution of OpenGL instructions.
Regardless of the programming language, the functions of OpenGL are procedure-oriented. They are executed to manipulate a state or object of OpenGL Context.
Because the OpenGL Context is a very large state machine, switching contexts tends to incur a large overhead. For different plotting modules, the needed context might be different. Thus, we can create multiple OpenGL Contexts for different threads sharing buffers and texture, etc. to make it more rational and efficient.
Frame Buffer
Attachment
Texture and Render Buffer
Vertex Array and Vertex Buffer
Element Array and Element Buffer
Shader
Vertex Shader
Fragment Shader
Per-Fragment Operation
Test
Blending
Dithering