The OpenGL ES Registry contains specifications of the core API and shading language; specifications of Khronos- and vendor-approved OpenGL ES extensions; header files corresponding to the specifications; and related documentation.

The OpenGL ES Registry is part of the Combined OpenGL Registry for OpenGL, OpenGL ES, and OpenGL SC, which includes the XML API registry of reserved enumerants and functions.

Table of Contents


OpenGL ES Core API and Shading Language Specifications and Reference Pages

The current version of OpenGL ES is OpenGL ES 3.2. Specifications for older versions 3.1, 3.0, 2.0, 1.1, and 1.0 are also available below. For additional specifications, headers, and documentation not listed below, see the Khronos.org Developer Pages. Header files not labelled with a revision date include their last update time in comments near the top of the file.

OpenGL ES 3.2 Specifications and Documentation

OpenGL ES 3.1 Specifications and Documentation

OpenGL ES 3.0 Specifications and Documentation

OpenGL ES 2.0 Specifications and Documentation

OpenGL ES 1.1 Specifications and Documentation

OpenGL ES 1.0 Specification and Documentation


API and Extension Header Files

Because extensions vary from platform to platform and driver to driver, OpenGL ES segregates headers for each API version into a header for the core API (OpenGL ES 1.0, 1.1, 2.0, 3.0, 3.1 and 3.2) and a separate header defining extension interfaces for that core API. These header files are supplied here for developers and platform vendors. They define interfaces including enumerants, prototypes, and for platforms supporting dynamic runtime extension queries, such as Linux and Microsoft Windows, function pointer typedefs. Please report problems as Issues in the OpenGL-Registry repository.

In addition to the core API and extension headers, there is also an OpenGL ES version-specific platform header file intended to define calling conventions and data types specific to a platform.

Almost all of the headers described below depend on a platform header file common to multiple Khronos APIs called <KHR/khrplatform.h>.

Vendors may include modified versions of any or all of these headers with their OpenGL ES implementations, but in general only the platform-specific OpenGL ES and Khronos headers are likely to be modified by the implementation. This makes it possible for developers to drop in more recently updated versions of the headers obtained here, typically when new extensions are supplied on a platform.

OpenGL ES 3.2 Headers

OpenGL ES 3.1 Headers

OpenGL ES 3.0 Headers

OpenGL ES 2.0 Headers

OpenGL ES 1.1 Headers

Khronos Shared Platform Header (<KHR/khrplatform.h>)


Extension Specifications by number