OpenGL ES

OpenGL ES
OpenGL ES
OpenGL ES logo
Original author(s) Khronos Group
Developer(s) Khronos Group
Stable release 2.0[1] / March 5, 2007; 4 years ago (2007-03-05)
Written in C
Operating system Cross-platform
Platform Cross-platform
Type API
Website www.khronos.org/opengles

OpenGL for Embedded Systems (OpenGL ES) is a subset of the OpenGL 3D graphics application programming interface (API) designed for embedded systems such as mobile phones, PDAs, and video game consoles. OpenGL ES is managed by the not-for-profit technology consortium, the Khronos Group, Inc.

Contents

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.

Version 1.0 and 1.1 both have common and common lite 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

Contained much functionality stripped from the original OpenGL API and a little bit added. Two of the more significant differences between OpenGL ES and OpenGL are the removal of the glBegin ... glEnd calling semantics for primitive rendering (in favor of vertex arrays) and the introduction of fixed-point data types for vertex coordinates and attributes to better support the computational abilities of embedded processors, which often lack a floating point unit (FPU). Many other functions were removed in version 1.0 to produce a lightweight interface: for example, quad and polygon primitive rendering, texgen, line and polygon stipple, polygon mode, antialiased polygon rendering (with alpha border fragments, not multisample), ARB_Image class pixel operation functionality, bitmaps, 3D texture, drawing to the frontbuffer, accumulation buffer, copy pixels, evaluators, selection, feedback, display lists, push and pop state attributes, back-face material parameters, and user defined clip planes.

OpenGL ES 1.1

Adds to the OpenGL ES 1.0 functionality by introducing additional features such as mandatory support for multitexture, better multitexture support (with combiners and dot product texture operations), automatic mipmap generation, vertex buffer objects, state queries, user clip planes, and greater control over point rendering.

OpenGL ES 2.0

OpenGL ES 2.0 was publicly released in March 2007.[2] It eliminates most of the fixed-function rendering pipeline in favor of a programmable one. Almost all rendering features of the transform and lighting pipelines, 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.

Use

OpenGL ES 1.0

  • Official 3D graphics API of the operating systems Android[3] and Symbian[4]
  • Supported by the PlayStation 3 as one of official graphics APIs[5] (the other one being low level libgcm library), the PlayStation 3 also includes several features of OpenGL ES 2.0
  • Supported by QNX[6]

OpenGL ES 1.1

  • Supported by Android 1.6
  • Supported by iOS for iPad, iPhone, and iPod Touch
  • Supported by the BlackBerry 5.0 operating system series,[7] however, only BlackBerry Storm 2, BlackBerry Curve 8530 and later models have the needed hardware[8]
  • Supported for Palm webOS, using the Plug-in Development Kit[9]
  • Supported by the Nintendo 3DS

OpenGL ES 2.0

  • Supported by the iPad, iPhone 3GS or later, and iPod Touch 3rd generation and later
  • Supported by the Android platform since Android 2.2[10]
  • Supported by the Android platform NDK since Android 2.0[11]
  • Support by BlackBerry devices with BlackBerry OS 7.0
  • Supported by the BlackBerry PlayBook
  • 3D Library of the Pandora console
  • Chosen for WebGL: OpenGL for web browsers[12]
  • Supported by some new Nokia mobile phones, such as the Maemo based Nokia N900[13] and the Symbian^3 based Nokia N8.
  • Supported by various Samsung mobile phones, including the Galaxy S and Wave
  • Supported for Palm webOS, using the Plug-in Development Kit[9]
  • Supported by the Archos Internet tablets: Archos 70 IT, Archos 101 IT, Archos 80 G9, Archos 101 G9

References

  1. ^ Khronos Releases Finalized OpenGL ES 2.0 Specification - Khronos Group Press Release
  2. ^ "Khronos Press Releases - OpenGL ES 2.0". Khronos.org. 2007-03-05. http://www.khronos.org/news/press/releases/finalized_opengl_es_20_specification/. Retrieved 2010-12-23. 
  3. ^ What is Android?, Google
  4. ^ Symbian OS v9.5 product sheet, Symbian
  5. ^ OpenGL ES demo in PPT format
  6. ^ "Using OpenGL ES". QNX Software Development Platform (v6.5.0). QNX. http://www.qnx.com/developers/docs/6.5.0/topic/com.qnx.doc.gf_dev_guide/3d.html. Retrieved 2011-01-08. 
  7. ^ "New in this beta release". Release Notes - BlackBerry Java Application. Research in Motion. http://docs.blackberry.com/en/developers/deliverables/11953/New_in_this_beta_release_895185_11.jsp. Retrieved 2009-12-08. 
  8. ^ Koh, Damian (2009-11-29). "What to expect for BlackBerry smartphones". CNET Asia. http://asia.cnet.com/reviews/mobilephones/0,39050603,62059292,00.htm. Retrieved 2009-12-08. 
  9. ^ a b "PDK - Overview". HP Palm Developer Center. http://developer.palm.com/index.php?option=com_content&view=article&id=1989&Itemid=370#CoreTechnologies. Retrieved 2010-12-23. 
  10. ^ "Android 2.2 specifications". Google. 2010-07-01. http://developer.android.com/sdk/android-2.2.html. 
  11. ^ "Android NDK hits Release 3, brings OpenGL ES 2.0 access to devs". Engadget. 2010-03-08. http://www.engadget.com/2010/03/08/android-ndk-hits-release-3-brings-opengl-es-2-0-access-to-devs/. 
  12. ^ Khronos Details WebGL Initiative to Bring Hardware-Accelerated 3D Graphics to the Internet
  13. ^ "Maemo software - Nokia > Nokia N900 mobile computer > Technical specifications". Nokia Corporation. http://maemo.nokia.com/n900/specifications/. Retrieved 12 January 2010. 

Further reading

External links


Wikimedia Foundation. 2010.

Игры ⚽ Поможем написать курсовую

Look at other dictionaries:

  • OpenGL — Original author(s) Silicon Graphics Developer(s) Khronos Group Stable release 4.2 …   Wikipedia

  • OpenGL — Desarrollador Khronos Group www.opengl.org Información general Diseñador Silicon Graphics …   Wikipedia Español

  • OpenGL — Entwickler Khronos Group Aktuelle Version 4.2 (8. August 2011) Betriebssystem …   Deutsch Wikipedia

  • Opengl — Entwickler: Khronos Group Aktuelle Version: 3.1 (24. März 2009) Betriebssystem: plattformunabhängig Kategorie …   Deutsch Wikipedia

  • OpenGL — Тип API Раз …   Википедия

  • OpenGL — Développeur Silicon Graphics Dernière version …   Wikipédia en Français

  • Opengl — Développeur Silicon Graphics Dernière version …   Wikipédia en Français

  • OpenGL++ — was intended to be a powerful layer above the OpenGL 3D graphics system written in C++ that supported object oriented data structures. The project started as the result of a partnership between SGI, IBM and Intel (and later Digital Equipment… …   Wikipedia

  • OpenGL ES — (OpenGL for Embedded Systems) es una variante simplificada de la API gráfica OpenGL diseñada para dispositivos integrados tales como teléfonos móviles, PDAs y consolas de videojuegos. La define y promueve el Grupo Khronos, un consorcio de… …   Wikipedia Español

  • OpenGL ES — Entwickler: Khronos Group Aktuelle Version: 2.0 Betriebssystem: plattformunabhängig Kategorie: API …   Deutsch Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”