Introduction to the extension mechanism
Each release of OpenGL represents a core of graphics functionality and API calls which must be supported by any vendor claiming to support OpenGL. However this core of API functionality does not prevent individual implementors or groups of implementors from adding new features and API calls. In fact even at the time of a core release some official optional graphics capabilities may also be specified. All these categories enhanced functionality and the associated API calls and tokens are referred to as extensions. Each OpenGL extension is carefully specified in the context of the broader OpenGL specification and there are runtime checks that can be used to query the existence of any extension and generate the appropriate function call.