The Standard for Embedded Accelerated 3D Graphics
OpenGL® ES is a royalty-free, cross-platform API for full-function 2D and 3D graphics on embedded systems - including consoles, phones, appliances and vehicles. It consists of well-defined subsets of desktop OpenGL, creating a flexible and powerful low-level interface between software and graphics acceleration. OpenGL ES includes profiles for floating-point and fixed-point systems and the EGL™ specification for portably binding to native windowing systems. OpenGL ES 1.X is for fixed function hardware and offers acceleration, image quality and performance. OpenGL ES 2.X enables full programmable 3D graphics. OpenGL SC is tuned for the safety critical market.
OpenGL ES 2.X - for Programmable Hardware
For programmable hardware: OpenGL ES 2.0 is defined relative to the OpenGL 2.0 specification and emphasizes a programmable 3D graphics pipeline with the ability to create shader and program objects and the ability to write vertex and fragment shaders in the OpenGL ES Shading Language. OpenGL ES 2.0 does not support the fixed function transformation and fragment pipeline of OpenGL ES 1.x. Learn More...
- The OpenGL ES 2.0 specification, header files, and optional extension specifications
- The OpenGL ES 2.0 Online Manual Pages
- The OpenGL ES 3.0 Shading Language Online Reference Pages
- The OpenGL ES 2.0 Reference Card
OpenGL ES 2.0 in more detail
OpenGL ES 2.0 combines a version of the OpenGL Shading Language for programming vertex and fragment shaders that has been adapted for embedded platforms, together with a streamlined API from OpenGL ES 1.1 that has removed any fixed functionality that can be easily replaced by shader programs, to minimize the cost and power consumption of advanced programmable graphics subsystems.
- OpenGL 2.0 as a reference - the specification is defined relative to the
OpenGL 2.0 specification.
- OpenGL ES Shading Language - adds the same basic shading language as used in OpenGL 2.0, but adapted for embedded platforms.
- Programmable Pipeline of OpenGL 2.0 replaces the fixed function transformation and fragment pipeline of OpenGL 1.x. (see diagram below). Using shaders minimize the cost and power of advanced programmable graphics subsystems.
- Wider range of precision options for use in embedded devices - adds the same basic shading language as used in OpenGL 2.0.
- Frame Buffer Objects - simplify surface management and offer a subset of functionality from the desktop FBO
- Not 100% backward compatible with OpenGL ES 1.x - though changes are minimized and removed functionality can be replaced with shaders
Implementers of OpenGL ES 2_X
- ARM Limited
- NVIDIA Corporation
- Vivante Corporation
- Imagination Technologies
- Sony Computer Entertainment Inc.
- Fujitsu Limited
- Apple, Inc.
- Digital Media Professionals
- Creative Technology Ltd
- MediaTek Inc
- NOKIA OYJ
- Broadcom Corporation
- Google, Inc.