EGL (API): Difference between revisions

Content deleted Content added
Undid revision 1104394974 by Mpd (talk) Previous submission added copyrighted material. iThenticate report: https://api.ithenticate.com/en_us/dv/20220511?lang=en_us&o=88998446 CopyPatrol permalink: https://copypatrol.toolforge.org/en/?id=88998446
Filled in 6 bare reference(s) with reFill 2. Manual changes to citations, add better website names
Line 6:
|author = [[Khronos Group]]
|developer = [[Khronos Group]]
|latest release version = 1.5<ref>{{cite web |url=https://www.khronos.org/news/press/khronos-releases-egl-1.5-specification |title=Press Release, Khronos releasesReleases EGL 1.5 specificationSpecification |publisher=[[Khronos Group]] |date=2014-03-19 |access-date=2014-03-20}}</ref>
|latest release date = {{Start date and age|2014|03|19}}
|programming language = [[C (programming language)|C]]
Line 15:
|website = {{URL|https://www.khronos.org/}}
}}
'''EGL''' is an [[Interface (computing)|interface]] between [[Khronos Group|Khronos]] [[rendering API]]s (such as [[OpenGL]], [[OpenGL ES]] or [[OpenVG]]) and the underlying native platform [[windowing system]]. EGL handles graphics context management, [[Computer representation of surfaces|surface]]/[[Data buffer|buffer]] binding, [[Rendering (computer graphics)|rendering]] synchronization, and enables "high-performance, accelerated, mixed-mode [[2D computer graphics|2D]] and [[3D computer graphics|3D]] rendering using other Khronos APIs."<ref>[http{{Cite web|url=https://www.khronos.org/egl/ |title=EGL Overview], Native Platform Interface|date=July 19, 2011|website=The Khronos Group}}</ref> EGL is managed by the [[Non-profit organization|non-profit]] technology consortium [[Khronos Group]].
 
The acronym ''EGL'' is an [[initialism]], which starting from EGL version 1.2 refers to ''Khronos Native Platform Graphics Interface''.<ref>[{{Cite web|url=http://www.khronos.org/registry/egl/specs/eglspec.1.2.pdf|title=Khronos Native Platform Graphics Interface (EGL Version 1.2) Specification](July 28, 2005) |editor=Jon Leech}}</ref> Prior to version 1.2, the name of the EGL specification was ''OpenGL ES Native Platform Graphics Interface''.<ref>[{{Cite web|url=http://www.khronos.org/registry/egl/specs/eglspec.1.0.pdf|title=OpenGL® EGLES Native Platform Graphics Interface (Version 1.0)|editor=Jon Specification]Leech}}</ref> [[X.Org Foundation|X.Org]] development documentation glossary defines EGL as "Embedded-System Graphics Library".<ref>[http{{Cite web|url=https://www.x.org/wiki/Development/Documentation/Glossary#EGL EGL in /|title=Glossary|website=X.Org development documentation glossary]Foundation}}</ref>
 
== Adoption ==
Line 33:
}}
* The [[BlackBerry 10]] and [[BlackBerry Tablet OS]] mobile device operating system uses EGL for 3D graphics rendering. Both support EGL version 1.4.<ref>{{Cite web |url=http://developer.blackberry.com/native/documentation/core/opengl_es_developer_guide.html |title= Developer Guide |access-date=2014-05-28 |archive-url=https://web.archive.org/web/20131010082650/http://developer.blackberry.com/native/documentation/core/opengl_es_developer_guide.html |archive-date=2013-10-10 |url-status=dead }}</ref>
* The [[Android (operating system)|Android]] mobile device operating system uses EGL for 3D graphics rendering.<ref>{{Cite web | url=http://developer.android.com/about/versions/android-2.3-highlights.html | title=Android 2.3 Gingerbread, New Features|website=Android Developers}}</ref>
* The [[Wayland (display server protocol)|Wayland]] display server protocol uses EGL.<ref>{{Cite web | url=http://ppaalanen.blogspot.com/2012/03/what-does-egl-do-in-wayland-stack.html | title=Pekka Paalanen: What does EGL do in the Wayland stack | date=10 March 2012 |author=Pekka Paalanen}}</ref> It is implemented in a way that Wayland clients will draw directly to the framebuffer using EGL.
* [[Mesa 3D (OpenGL)|Mesa 3D]] has an implementation of EGL formerly known as Eagle.<ref>[http{{Cite web|url=https://wwwdocs.mesa3d.org/egl.html|title=EGL — The Mesa EGL]3D Graphics Library latest documentation|website=Mesa 3D Documentation}}</ref>
* The [[Mir (display server protocol)|Mir]] display server protocol by [[Canonical Ltd.]] uses EGL.<ref>{{Cite web |url=https://wiki.ubuntu.com/MirSpec |title=MirSpec |access-date=2013-03-07 |archive-date=2013-03-06 |archive-url=https://web.archive.org/web/20130306104754/https://wiki.ubuntu.com/MirSpec |url-status=dead }}</ref>
* The [[Simple DirectMedia Layer]] toolkit has been ported to use EGL. It can use [[Xlib]], write directly to the [[framebuffer]] or use EGL.
* The [[Raspberry Pi]] single-board computer has an EGL interface to hardware-accelerated 3D graphics rendering.<ref>http{{Cite web|url=https://elinux.org/RPi_VideoCore_APIs|title=Raspberry Pi VideoCore APIs - eLinux.org|website=elinux.org}}</ref>
* The proprietary [[Nvidia]] driver 331.13 BETA from 4 October 2013 supports the EGL API.<ref>{{cite web|url=http://www.nvidia.com/object/linux-display-amd64-331.13-driver.html |title=Added support for the EGL API on 32-bit platforms. Currently, the supported client APIs are OpenGL ES 1.1, 2.0 and 3.0, and the only supported window system backend is X11. |date=2013-10-04 |access-date=2013-10-05}}</ref>
* [[Tizen]] OS uses EGL with either OpenGL ES 1.1 or OpenGL ES 2.0 for 3D graphics rendering<ref>{{Cite web | url=https://wiki.tizen.org/wiki/Porting_Guide/Graphics_and_UI | title=Porting Guide/Graphics and UI - Tizen Wiki }}</ref>