OpenGL ES





















OpenGL ES

OpenGL ES logo
OpenGL ES logo

Original author(s)
ARB
Developer(s)
Khronos Group
Initial release
28 July 2003; 15 years ago (2003-07-28)

Stable release
3.2[1]
/ 10 August 2015; 3 years ago (2015-08-10)


Operating system
Cross-platform
Platform
Cross-platform
Type
API
License
Free of charge, royalty or licensing
Website
www.khronos.org/opengles

OpenGL for Embedded Systems (OpenGL ES or GLES) is a subset[2] of the OpenGL computer graphics rendering application programming interface (API) for rendering 2D and 3D computer graphics such as those used by video games, typically hardware-accelerated using a graphics processing unit (GPU). It is designed for embedded systems like smartphones, tablet computers, video game consoles and PDAs. OpenGL ES is the "most widely deployed 3D graphics API in history".[3]


The API is cross-language and multi-platform. The libraries GLUT and GLU are not available for OpenGL ES. OpenGL ES is managed by the non-profit technology consortium Khronos Group. Vulkan, a next-generation API from Khronos, is made for simpler high performance drivers for mobile and desktop devices.[4]




Contents





  • 1 Versions

    • 1.1 OpenGL ES 1.0


    • 1.2 OpenGL ES 1.1


    • 1.3 OpenGL ES 2.0


    • 1.4 OpenGL ES 3.0


    • 1.5 OpenGL ES 3.1


    • 1.6 OpenGL ES 3.2



  • 2 Platform usage

    • 2.1 OpenGL ES 1.0


    • 2.2 OpenGL ES 1.1


    • 2.3 OpenGL ES 2.0


    • 2.4 OpenGL ES 3.0


    • 2.5 OpenGL ES 3.1

      • 2.5.1 Android Extension Pack



    • 2.6 OpenGL ES 3.2



  • 3 Deprecation in Apple devices


  • 4 OpenGL compatibility


  • 5 See also


  • 6 References


  • 7 Further reading


  • 8 External links




Versions


Several versions of the OpenGL ES specification now exist. OpenGL ES 1.0 is drawn up against the OpenGL 1.3 specification, OpenGL ES 1.1 is defined relative to the OpenGL 1.5 specification and OpenGL ES 2.0 is defined relative to the OpenGL 2.0 specification. This means that, for example, an application written for OpenGL ES 1.0 should be easily portable to the desktop OpenGL 1.3; as the OpenGL ES is a stripped-down version of the API, the reverse may or may not be true, depending on the particular features used.


OpenGL ES comes with its own version of shading language (OpenGL ES SL), which is different from OpenGL SL.[5]


Version 1.0 and 1.1 both have common (CM) and common lite (CL) profiles, the difference being that the common lite profile only supports fixed-point instead of floating point data type support, whereas common supports both.



OpenGL ES 1.0


OpenGL ES 1.0 was released publicly July 28, 2003. OpenGL ES 1.0 is based on the original OpenGL 1.3 API, with much functionality removed and a little bit added. One significant difference between OpenGL and OpenGL ES is that OpenGL ES removed the need to bracket OpenGL library calls with glBegin and glEnd. Other significant differences are that the calling semantics for primitive rendering functions were changed in favor of vertex arrays, and fixed-point data types were introduced for vertex coordinates. Attributes were also added to better support the computational abilities of embedded processors, which often lack a floating point unit (FPU). Many other functions and rendering primitives were removed in version 1.0 to produce a lightweight interface, including:


  • quad and polygon rendering primitives,

  • texgen, line and polygon stipple,

  • polygon mode and antialiased polygon rendering are not supported, although rendering using multisample is still possible (rather than alpha border fragments),


  • ARB_Image pixel class operation are not supported, nor are bitmaps or 3D textures,

  • several of the more technical drawing modes are eliminated, including frontbuffer and accumulation buffer. Bitmap operations, specifically copying pixels (individually) is not allowed, nor are evaluators, nor (user) selection operations,

  • display lists and feedback are removed, as are push and pop operations for state attributes,

  • some material parameters were removed, including back-face parameters and user defined clip planes.

Actual State is 1.0.0.2. [6]





























Extension Name
Sort #Number
Details

OES_byte_coordinates
OpenGL ES Extension #4(formerly OpenGL Extension #291)

OES_compressed_paletted_texture
OpenGL ES Extension #6(formerly OpenGL Extension #294)

OES_fixed_point
OpenGL ES Extension #9(formerly OpenGL Extension #292)

OES_query_matrix
OpenGL ES Extension #16(formerly OpenGL Extension #296)

OES_read_format
OpenGL ES Extension #17(formerly OpenGL Extension #295)

OES_single_precision
OpenGL ES Extension #18(formerly OpenGL Extension #293)

optionalMesa (all drivers)

OES_compressed_ETC1_RGB8_texture
OpenGL ES Extension #5


OpenGL ES 1.1


OpenGL ES 1.1 added features such as mandatory support for multitexture, better multitexture support (including combiners and dot product texture operations), automatic mipmap generation, vertex buffer objects, state queries, user clip planes, and greater control over point rendering.[7]
Actual Version is 1.1.12. [8]




















Extension Name
Sort #Number

OES_draw_texture
OpenGL ES Extension #7

OES_matrix_get
OpenGL ES Extension #11

OES_point_size_array
OpenGL ES Extension #14

OES_point_sprite
OpenGL ES Extension #15
optional
Mesa (all drivers)

OES_EGL_image
OpenGL ES Extension #23

OES_EGL_image_external
OpenGL ES Extension #87

OES_required_internalformat
OpenGL ES Extension # TBD


OpenGL ES 2.0


OpenGL ES 2.0 was publicly released in March 2007.[9] It is roughly based on OpenGL 2.0, but it eliminates most of the fixed-function rendering pipeline in favor of a programmable one in a move similar to the transition from OpenGL 3.0 to 3.1.[10] Control flow in shaders is generally limited to forward branching and to loops where the maximum number of iterations can easily be determined at compile time.[11] Almost all rendering features of the transform and lighting stage, such as the specification of materials and light parameters formerly specified by the fixed-function API, are replaced by shaders written by the graphics programmer. As a result, OpenGL ES 2.0 is not backward compatible with OpenGL ES 1.1. Some incompatibilities between the desktop version of OpenGL and OpenGL ES 2.0 persisted until OpenGL 4.1, which added the GL_ARB_ES2_compatibility extension.[12]
Actual version is 2.0.25. [13]


The Khronos Group has written a document describing the differences between OpenGL ES 2.0 and ordinary OpenGL 2.0.[14]
















































































Extension Name
Sort #Number

OES_texture_cube_map
OpenGL ES Extension #20

OES_texture_npot
OpenGL ES Extension #37

OES_depth24
OpenGL ES Extension #24

OES_depth_texture
OpenGL ES Extension #44

OES_element_index_uint
OpenGL ES Extension #26

OES_fbo_render_mipmap
OpenGL ES Extension #27

OES_get_program_binary
OpenGL ES Extension #47

OES_mapbuffer
OpenGL ES Extension #29

OES_packed_depth_stencil
OpenGL ES Extension #43

OES_rgb8_rgba8
OpenGL ES Extension #30

OES_stencil8
OpenGL ES Extension #33

OES_vertex_half_float
OpenGL ES Extension #38
additional
in MESA (all drivers)

OES_EGL_image
OpenGL ES Extension #23 (different for 1.1)

OES_EGL_image_external
OpenGL ES Extension #87 (different for 1.1)

OES_texture_float_linear OES_texture_half_float_linear
OpenGL ES Extension #35, extended in ES 3.0 and 3.1

OES_texture_float OES_texture_half_float
OpenGL ES Extension #36, extended in ES 3.0 and 3.1

OES_standard_derivatives
OpenGL ES Extension #45

OES_surfaceless_context
OpenGL ES Extension #116

OES_depth_texture_cube_map
OpenGL ES Extension #136

EXT_texture_filter_anisotropic
OpenGL ES Extension #41

EXT_texture_type_2_10_10_10_REV
OpenGL ES Extension #42

EXT_texture_compression_dxt1
OpenGL ES Extension #49

EXT_texture_format_BGRA8888
OpenGL ES Extension #51

EXT_discard_framebuffer
OpenGL ES Extension #64

EXT_blend_minmax
OpenGL ES Extension #65

EXT_read_format_bgra
OpenGL ES Extension #66

EXT_multi_draw_arrays
OpenGL ES Extension #69

EXT_frag_depth
OpenGL ES Extension #86

EXT_unpack_subimage
OpenGL ES Extension #90

EXT_texture_rg
OpenGL ES Extension #103

EXT_draw_buffers
OpenGL ES Extension #151

EXT_compressed_ETC1_RGB8_sub_texture
OpenGL ES Extension #188

NV_draw_buffers
OpenGL ES Extension #91

NV_fbo_color_attachments
OpenGL ES Extension #92

NV_read_buffer
OpenGL ES Extension #93

NV_read_depth_stencil
OpenGL ES Extension #94

ANGLE_texture_compression_dxt
OpenGL ES Extension #111


OpenGL ES 3.0


The OpenGL ES 3.0 specification[15] was publicly released in August 2012.[16] OpenGL ES 3.0 is backwards compatible with OpenGL ES 2.0, enabling applications to incrementally add new visual features to applications. OpenGL 4.3 provides full compatibility with OpenGL ES 3.0. Version 3.0 is also the basis for WebGL 2.0.[17]
Actual is version 3.0.5. [18]


New functionality in the OpenGL ES 3.0 specification includes:


  • multiple enhancements to the rendering pipeline to enable acceleration of advanced visual effects including: occlusion queries, transform feedback, instanced rendering and support for four or more rendering targets,

  • high quality ETC2 / EAC texture compression as a standard feature, eliminating the need for a different set of textures for each platform,

  • a new version of the GLSL ES shading language[19] with full support for integer and 32-bit floating point operations;

  • greatly enhanced texturing functionality including guaranteed support for floating point textures, 3D textures, depth textures, vertex textures, NPOT textures, R/RG textures, immutable textures, 2D array textures, swizzles, LOD and mip level clamps, seamless cube maps and sampler objects,

  • an extensive set of required, explicitly sized texture and render-buffer formats, reducing implementation variability and making it much easier to write portable applications.




























Extension Name
Sort #Number
Details

OES_vertex_array_object
OpenGL ES Extension #71


KHR_context_flush_control
OpenGL ES Extension #191
(for GL_KHR_context_flush_control only)
additional
in MESA (all drivers)


OES_texture_compression_astc
OpenGL ES Extension #162


EXT_texture_border_clamp
OpenGL ES Extension #182


EXT_draw_elements_base_vertex
OpenGL ES Extension #204


OES_EGL_image_external_essl3
OpenGL ES Extension #220


MESA_shader_integer_functions
OpenGL ES Extension #495


OpenGL ES 3.1


The OpenGL ES 3.1 specification[20] was publicly released in March 2014.
New functionality in OpenGL ES 3.1 includes:[21]


  • Compute shaders

  • Independent vertex and fragment shaders

  • Indirect draw commands

OpenGL ES 3.1 is backward compatible with OpenGL ES 2.0 and 3.0, thus enabling applications to incrementally incorporate new features. Actual Version is 3.1-(November 2016). [22]
















































Extension Name
Sort #Number

ARB_arrays_of_arrays
ARB Extension #120

ARB_compute_shader
ARB Extension #122

ARB_explicit_uniform_location
ARB Extension #128

ARB_framebuffer_no_attachments
ARB Extension #130

ARB_program_interface_query
ARB Extension #134

ARB_shader_atomic_counters
ARB Extension #114

ARB_shader_image_load_store
ARB Extension #115

ARB_shader_storage_buffer_object
ARB Extension #137

ARB_separate_shader_objects
ARB Extension #97

ARB_stencil_texturing
ARB Extension #138

ARB_vertex_attrib_binding
ARB Extension #125

ARB_draw_indirect
ARB Extension #87

ARB_shading_language_packing
ARB Extension #116

ARB_shader_image_size
ARB Extension #136

ARB_texture_storage_multisample
ARB Extension #141

ARB_texture_multisample
ARB Extension #67

EXT_shader_integer_mix
OpenGL ES Extension #161
optional
Mesa (all drivers OpenGL ES 3.1+)

ARB_sample_locations
ARB Extension #181

OES_texture_view
OpenGL ES Extension #218

NV_image_formats
OpenGL ES Extension #200

EXT_texture_norm16
OpenGL ES Extension #207


OpenGL ES 3.2


The OpenGL ES 3.2 specification[23] was publicly released in August 2015.
New capabilities in OpenGL ES 3.2 include:


  • Geometry and tessellation shaders to efficiently process complex scenes on the GPU.

  • Floating point render targets for increased flexibility in higher precision compute operations.


  • ASTC compression to reduce the memory footprint and bandwidth used to process textures.

  • Enhanced blending for sophisticated compositing and handling of multiple color attachments.

  • Advanced texture targets such as texture buffers, multisample 2D array and cube map arrays.

  • Debug and robustness features for easier code development and secure execution.

Actual State is 3.2 November 2016. [24]


























































Extension Name
Sort #Number

KHR_blend_equation_advanced
OpenGL ES Extension #168

EXT_color_buffer_float
OpenGL ES Extension #137

KHR_debug
OpenGL ES Extension #118

KHR_robustness
OpenGL ES Extension #190

OES_copy_image
OpenGL ES Extension #208

OES_draw_buffers_indexed
OpenGL ES Extension #209

OES_draw_elements_base_vertex
OpenGL ES Extension #219

OES_geometry_shader
OpenGL ES Extension #210

OES_gpu_shader5
OpenGL ES Extension #211

OES_sample_shading
OpenGL ES Extension #169

OES_sample_variables
OpenGL ES Extension #170

OES_shader_image_atomic
OpenGL ES Extension #171

OES_shader_io_blocks
OpenGL ES Extension #213

OES_shader_multisample_interpolation
OpenGL ES Extension #172

OES_tessellation_shader
OpenGL ES Extension #214

OES_texture_border_clamp
OpenGL ES Extension #215

OES_texture_buffer
OpenGL ES Extension #216

OES_texture_cube_map_array
OpenGL ES Extension #217

OES_texture_stencil8
OpenGL ES Extension #173

OES_texture_storage_multisample_2d_array
OpenGL ES Extension #174

KHR_texture_compression_astc_ldr
OpenGL ES Extension #117 (LDR only)

OES_primitive_bounding_box
OpenGL ES Extension #212
optional
Mesa (all drivers OpenGL ES 3.2+)

KHR_texture_compression_astc_hdr
OpenGL ES Extension #117 (LDR included), ARB Extension #118

KHR_blend_equation_advanced_coherent
OpenGL ES Extension #168

KHR_texture_compression_astc_sliced_3d
OpenGL ES Extension #249 (ARB Extension #189)

OES_viewport_array


OpenGL ES Extension #267

Some more extensions are developed or in Development in Mesa for next OpenGL ES Version (see Mesamatrix).


Next generation API is Vulkan. [25]



Platform usage


For complete list of companies and their conformant products, view here



OpenGL ES 1.0


OpenGL ES 1.0 added an official 3D graphics API to the Android[26] and Symbian[27] operating systems, as well as by QNX[28] It is also supported by the PlayStation 3 as one of its official graphics APIs[29] (the other one being low level libgcm library) with Nvidia's Cg in lieu of GLSL.[30] The PlayStation 3 also includes several features of the 2.0 version of OpenGL ES.



OpenGL ES 1.1


The 1.1 version of OpenGL ES is supported by:



  • Android 1.6

  • Apple iOS for iPad, iPhone, and iPod Touch


  • RIM's BlackBerry 5.0 operating system series[31] (only BlackBerry Storm 2, BlackBerry Curve 8530 and later models have the needed hardware[32])

  • BlackBerry PlayBook

  • BlackBerry BB10

  • Various Nokia phones such as Nokia N95, N93, N93i, and N82.

  • The Palm webOS, using the Plug-in Development Kit[33]


  • Nintendo 3DS[34]


OpenGL ES 2.0


Supported by:


  • The Android platform since Android 2.0 through NDK and Android 2.2 through Java[35]


  • AmigaOS on AmigaOne with Warp3D Nova and compatible RadeonHD graphics card.

  • Apple iOS 5 or later in iPad, iPad Mini, iPhone 3GS or later, and iPod Touch 3rd generation or later


  • BlackBerry devices with BlackBerry OS 7.0 and Blackberry 10, as well as the BlackBerry PlayBook

  • Google Native Client

  • Various Nokia phones (such as Symbian^3 based Nokia N8, MeeGo based Nokia N9, and Maemo based Nokia N900[36])

  • Palm webOS, using the Plug-in Development Kit[33]

  • The Pandora console

  • The Raspberry Pi

  • The Odroid

  • Various Samsung mobile phones (such as the Wave)

  • Web browsers (WebGL)

  • The GCW Zero console


OpenGL ES 3.0


Supported by:


  • Android since version 4.3, on devices with appropriate hardware and drivers, including:
    • Nexus 7 (2013)

    • Nexus 4

    • Nexus 5

    • Nexus 10

    • HTC Butterfly S


    • HTC One/One Max

    • LG G2

    • LG G Pad 8.3

    • Samsung Galaxy J5

    • Samsung Galaxy J5 (2016)


    • Samsung Galaxy S4 (Snapdragon version)

    • Samsung Galaxy S5

    • Samsung Galaxy Note 3

    • Samsung Galaxy Note 10.1 (2014 Edition)

    • Sony Xperia M


    • Sony Xperia Z/ZL

    • Sony Xperia Z1

    • Sony Xperia Z Ultra

    • Sony Xperia Tablet Z


  • iOS since version 7, on devices including:

    • iPhone 5S[37]

    • iPad Air

    • iPad mini with Retina display


  • BlackBerry 10 OS since version 10.2, on devices including:
    • BlackBerry Z3

    • BlackBerry Z30

    • BlackBerry Passport


Supported by some recent versions of these GPUs:[38][39]



  • Adreno 300 and 400 series (Android, BlackBerry 10, Windows Phone 8, Windows RT)


  • Mali T600 series onwards (Android, Linux, Windows 7)


  • PowerVR Series6 (iOS, Linux)


  • Vivante (Android, OS X 10.8.3, Windows 7)


  • Nvidia (Android, Linux, Windows 7)


  • Intel (Linux)


OpenGL ES 3.1


Supported by Windows, Linux, Android (since version 5.0) on devices with appropriate hardware and drivers,[40] including:



  • Adreno 400 series[41][42]


  • Adreno 500 series (Mesa 18.1 for Linux and Android)

  • Intel HD Graphics for Intel Atom Z3700 series (Android)

  • Intel HD Graphics for Intel Celeron N and J series (Android)

  • Intel HD Graphics for Intel Pentium N and J series (Android)

  • Mali T6xx (midgard) series onwards[43] (Android, Linux)


  • Nvidia GeForce 400 series onwards (Windows, Linux)

  • Nvidia Tegra K1 (Android, Linux)

  • Nvidia Tegra X1 (Android)

  • PowerVR Series 6, 6XE, 6XT, 7XE and 7XT (Linux, Android)


  • Vivante GC2000 series onwards (optional with GC800 and GC1000)[44]


Android Extension Pack


Android Extension Pack is a set of OpenGL ES 3.1 extensions, all bundled into a single extension introduced by Google in 2014. This allows applications to use all of the features of the set of extensions, while only testing for the presence of a single one. The AEP was officially added to Android Lollipop to provide extra features like tessellation over what was officially in the GLES 3.1 revision. OpenGL ES 3.2 update is largely made up of the AEP additions, which are already present in desktop OpenGL.[45]



OpenGL ES 3.2


OpenGL ES 3.2, incorporating the Android Extension Pack (AEP), "boasts a small number of improvements over last year’s OpenGL ES 3.1. Both make use of similar features from the AEP. From the AEP, OpenGL ES 3.2 compliant hardware will support Tessellation for additional geometry detail, new geometry shaders, ASTC texture compression for a smaller memory bandwidth footprint, floating point render targets for high accuracy compute processes, and new debugging features for developers. These high-end features are already found in the group’s full OpenGL 4 specification."[46][3]


Supported by Windows, Linux, Android (since version 6.0 possible, 7.0+ Vulkan 1.0 and OpenGL ES 3.2 needed) on devices with appropriate hardware and drivers, including:



  • Adreno 420 and newer (Android, Linux)

  • Mali-T760 and newer (Android, Linux)

  • Nvidia GeForce 400 series (Fermi) and newer (Windows, Linux)[47]


Deprecation in Apple devices


OpenGL and OpenGL ES (and OpenGL) is deprecated in Apple's operating systems, but still works in up to at least iOS 12.[48]



OpenGL compatibility


For full compatibility with OpenGL on ES-only devices, Nvidia offers a BSD licensed library called Regal, originally started by Cass Everitt.[49] Regal is used for example by Google's NaCl.[50]



See also


  • Direct3D

  • DirectX


  • OpenGL – original cross-language, multi-platform API for rendering 2D and 3D vector graphics


  • OpenSL ES – API for audio on embedded systems, developed by the Khronos Group


  • Vulkan – low-level, cross-platform 2D and 3D graphics API, the "next generation OpenGL initiative"


  • WebGL – Web Graphics Library is a JavaScript API for rendering 3D graphics within any compatible web browser without the use of plug-ins.

  • GLOVE: OpenGL ES Over Vulkan As Open-Source, in Future very important, if Vulkan is core driver and OpenGL ES is legacy layer[51]


References




  1. ^ "Khronos Expands Scope of 3D Open Standard Ecosystem". 


  2. ^ "OpenGL ES Overview". Khronos Group. 


  3. ^ ab "3D Graphics API State of the Union: SIGGRAPH 2015" (PDF). Khronos. Industry will ship >1.7 billion devices in 2015 


  4. ^ Hruska, Joel (4 March 2015). "Not dead yet: AMD's Mantle powers new Vulkan API, VR efforts". ExtremeTech. Ziff Davis. 


  5. ^ "What versions of GLSL can I use in OpenGL ES 2.0?". Stack Overflow. 


  6. ^ https://www.khronos.org/registry/OpenGL/specs/es/1.0/opengles_spec_1_0.pdf


  7. ^ http://developer.amd.com/wordpress/media/2012/10/GDC06-GLES_Tutorial_Day-Munshi-OpenGLES_Overview.pdf


  8. ^ https://www.khronos.org/registry/OpenGL/specs/es/1.1/es_full_spec_1.1.pdf


  9. ^ "Khronos Press Releases - OpenGL ES 2.0". Khronos.org. 2007-03-05. Archived from the original on 2010-12-28. Retrieved 2010-12-23. 


  10. ^ Edward Angel, Dave Shreiner, Interactive Computer Graphics: A Top-Down Approach with Shader-Based OpenGL, 6th Edition, p. xxi-xxii, ISBN 978-0-13-254523-5


  11. ^ "The OpenGL® ES Shading Language" (PDF). Khronos.org. Retrieved 2013-02-16. 


  12. ^ "The OpenGL(R)Graphics System: A Specification (Version 4.1 (Core Profile)" (PDF). July 25, 2010. 


  13. ^ https://www.khronos.org/registry/OpenGL/specs/es/2.0/es_full_spec_2.0.pdf


  14. ^ "OpenGL© ES – Common Profile Specification 2.0.25 (Difference Specification)" (PDF). November 2, 2010. 


  15. ^ "The OpenGL ES 3.0 specification". 


  16. ^ "Khronos Releases OpenGL ES 3.0 Specification to Bring Mobile 3D Graphics to the Next Level". Khronos.org. 2012-08-06. Retrieved 2012-08-06. 


  17. ^ "WebGL 2.0 Specification". 


  18. ^ https://www.khronos.org/registry/OpenGL/specs/es/3.0/es_spec_3.0.pdf


  19. ^ "The OpenGL ES 3.0 Shading Language Online Reference Pages". 


  20. ^ "The OpenGL ES 3.1 specification". 


  21. ^ "Khronos Releases OpenGL ES 3.1 Specification". Khronos.org. 2014-03-17. Retrieved 2014-03-17. 


  22. ^ https://www.khronos.org/registry/OpenGL/specs/es/3.1/es_spec_3.1.pdf


  23. ^ "The OpenGL ES 3.2 specification". 


  24. ^ https://www.khronos.org/registry/OpenGL/specs/es/3.2/es_spec_3.2.pdf


  25. ^ http://www.anandtech.com/show/9038/next-generation-opengl-becomes-vulkan-additional-details-released


  26. ^ "What is Android?". Google. 


  27. ^ "Symbian OS v9.5 product sheet". Symbian. Archived from the original on 2008-03-27. 


  28. ^ "Using OpenGL ES". QNX Software Development Platform (v6.5.0). QNX. Retrieved 2011-01-08. 


  29. ^ "OpenGL ES demo in PPT format". 


  30. ^ "OpenGL ES/PSGL Presentation in PPT format". Sony. Khronos. 


  31. ^ "New in this beta release". Release Notes - BlackBerry Java Application. Research in Motion. Archived from the original on 2009-12-02. Retrieved 2009-12-08. 


  32. ^ Koh, Damian (2009-11-29). "What to expect for BlackBerry smartphones". CNET Asia. Archived from the original on 2009-12-13. Retrieved 2009-12-08. 


  33. ^ ab "PDK - Overview". HP Palm Developer Center. Archived from the original on 2011-01-01. Retrieved 2010-12-23. 


  34. ^ "DMP announces OpenGL ES 1.1 conformant PICA 200 adopted by Nintendo". 2010-06-21. Retrieved 2013-06-02. 


  35. ^ "Android 2.2 specifications". Google. 2010-07-01. Archived from the original on 2010-10-11. 


  36. ^ "Maemo software - Nokia > Nokia N900 mobile computer > Technical specifications". Nokia Corporation. Archived from the original on 29 October 2009. Retrieved 12 January 2010. 


  37. ^ "iOS 8 for Developers". Apple Developer. 


  38. ^ "Khronos Conformant Products". 


  39. ^ Sag, Anshel (2013-04-11). "The State of OpenGL ES 3.0: Who's Got What". Bright Side of News. Archived from the original on 2013-06-15. Retrieved 2015-12-22. 


  40. ^ "OpenGL ES3.1 Conformant Products". Retrieved 2014-08-11. 


  41. ^ "Adreno™ Graphics Processing Units". Qualcomm. Retrieved 2014-08-11. 


  42. ^ "GL ES 3.1 on Adreno 3xx?". Retrieved 2014-08-11. 


  43. ^ "ARM's Mali Midgard Architecture Explored". AnandTech. Retrieved 2014-08-11. 


  44. ^ "Vivante Vega Cores for 3D". Vivante. Retrieved 2014-12-10. 


  45. ^ "Khronos Debuts OpenGL ES 3.2 & New GL Extensions, But No Vulkan This Week". August 10, 2015. Retrieved August 11, 2015. 


  46. ^ "OpenGL ES 3.2 and Vulkan – everything you need to know". Android Authority. 2015-08-15. Retrieved 2015-12-22. 


  47. ^ "NVIDIA Releases 358.50 Game Ready Drivers For Star Wars Battlefront". AnandTech. Retrieved 2015-10-07. 


  48. ^ Apple Inc. "What's New in iOS - Apple Developer". developer.apple.com. Retrieved 2018-08-07. Apps built using OpenGL ES will continue to run in iOS 12, but OpenGL ES is deprecated in iOS 12. 


  49. ^ "p3/regal: Regal for OpenGL". GitHub. 


  50. ^ McCutchan, John (7 September 2012). "In-depth: Bringing Regal OpenGL to Native Client". Gamasutra. 


  51. ^ https://www.phoronix.com/scan.php?page=news_item&px=GLOVE-OpenGL-ES-Vulkan



Further reading



  • Ginsburg, Dan; Purnomo, Budirijanto; Shreiner, Dave; Munshi, Aaftab (2014). OpenGL ES 3.0 Programming Guide. Addison-Wesley Professional. ISBN 0-321-93388-5. 


  • Pulli, Kari; Aarnio, Tomi; Miettinen, Ville; Roimela, Kimmo & Vaarala, Jani (2007). Mobile 3D Graphics with OpenGL ES and M3G. Morgan Kaufmann. ISBN 0-12-373727-3. 


  • Astle, Dave & Durnil, David. OpenGL ES Game Development. Course Technology PTR. ISBN 1-59200-370-2. 


  • Pulli, Kari; Aarnio, Tomi; Roimela, Kimmo & Vaarala, Jani. Designing graphics programming interfaces for mobile devices. IEEE CG&A 2005. 


External links





  • Official website Edit this at Wikidata

  • Public bug tracking

  • OpenGL ES Conformant companies

  • Public forums

  • List of OpenGL ES compatible devices

  • OpenGL home page

  • ANGLE: Almost Native Graphics Layer Engine, OpenGL ES 2.0 implementation on top of Direct3D 9/11

  • OpenGL ES 1.1 & 2.0 Emulator from ARM

  • OpenGL ES 3.0 Emulator from ARM






The name of the pictureThe name of the pictureThe name of the pictureClash Royale CLAN TAG#URR8PPP

Popular posts from this blog

How to make file upload 'Required' in Contact Form 7?

Rothschild family

amazon EC2 - How to make wp-config.php to writable?