{{위키데이터 속성 추적}}
{{소프트웨어 정보
|name = EGL (OpenGL)
|logo = EGL OpenGL Logo.svg
|author = [[크로노스 그룹]]
|developer = [[크로노스 그룹]]
|latest release version = 1.5<ref>{{웹 인용|url=https://www.khronos.org/news/press/khronos-releases-egl-1.5-specification |title=Khronos releases EGL 1.5 specification |publisher=[[Khronos Group]] |date=2014-03-19 |accessdate=2014-03-20}}</ref>
|latest release date = {{시작 날짜와 나이|2014|03|19}}
|programming language = [[C (프로그래밍 언어)|C]]
|operating system = [[크로스 플랫폼]]
|platform = [[크로스 플랫폼]]
|genre = [[API]]
|license = 
|website = {{URL|http://www.khronos.org/}}
}}
'''EGL'''은 ([[OpenGL]], [[OpenGL ES]] 또는 [[OpenVG]]와 같은) [[크로노스 그룹|크로노스]] [[렌더링 API]]와 기본 네이티브 플랫폼 [[윈도우 시스템]] 간의 [[인터페이스 (컴퓨팅)|인터페이스]]이다. EGL은 그래픽 [[컨텍스트 관리]], [[서피스]]/[[Data buffer|버퍼]] 바인딩, [[렌더링]] 동기화를 처리하고 "다른 크로노스 API를 사용하여 고성능, 가속화된, 혼합모드 [[2차원 컴퓨터 그래픽스|2D]] 및 [[3차원 컴퓨터 그래픽스|3D]] 렌더링"을 가능하게 한다.<ref>[http://www.khronos.org/egl/ EGL Overview]</ref> EGL [[비영리 단체|비영리]] 기술 컨소시엄 [[크로노스 그룹]]에 의해 관리되고 있다.

약어 ''EGL''은 ''Khronos Native Platform Graphics Interface''에 언급되어 EGL 버전 1.2부터 시작된 [[initialism]]이다.<ref>[http://www.khronos.org/registry/egl/specs/eglspec.1.2.pdf EGL 1.2 Specification]</ref> 버전 1.2이전에는 EGL 스펙의 이름이 ''OpenGL ES Native Platform Graphics Interface''였다.<ref>[http://www.khronos.org/registry/egl/specs/eglspec.1.0.pdf EGL 1.0 Specification]</ref> [[X.Org 재단|X.Org]] 개발 문서 용어집에서는 EGL을 "Embedded-System Graphics Library"로 정의한다.<ref>[http://www.x.org/wiki/Development/Documentation/Glossary#EGL EGL in X.Org development documentation glossary]</ref>

== 채택 ==
{{Multiple image
| align     = right
| direction = vertical
| header    = [[OpenGL ES]] 또는 [[OpenVG]]와 기본 [[display server|윈도우 시스템]]간의 인터페이스로 EGL은 널리 채택되었다
| width     = 300
| image1    = The Linux Graphics Stack and glamor.svg
| alt1      = The Linux graphic stack
| caption1  = [[Wayland (display server protocol)|Wayland]] 클라이언트는 [[framebuffer]]에 직접 그리기 위해 EGL을 사용한다. 디스플레이 서버는 [[Kernel (computing)|kernel]] (''here: [[Linux kernel]]'') 과 클라이언트 사이에 위치한다. 주어진 프로토콜을 통해 클라이언트와 통신한다.
| image2   = Wayland display server protocol.svg
| alt2     = Wayland display server protocol
| caption2 = [[Wayland (display server protocol)]]의 무료 구현은 '''EGL'''의 [[Mesa (computer graphics)|Mesa]] 구현에 의존한다. '''libwayland-EGL'''이라 불리는 특별한 라이브러리가 [[framebuffer]]에 대한 액세스를 수용하기 위해 작성되었다.
}}
* [[BlackBerry 10]]와 [[BlackBerry Tablet OS]] 모바일 장치의 운영체제는 3D 그래픽 렌더링을 위해 EGL을 사용한다. Both support EGL version 1.4.<ref>{{웹 인용 |url=http://developer.blackberry.com/native/documentation/core/opengl_es_developer_guide.html |제목=보관된 사본 |확인날짜=2018-11-27 |보존url=https://web.archive.org/web/20131010082650/http://developer.blackberry.com/native/documentation/core/opengl_es_developer_guide.html |보존날짜=2013-10-10 |url-status=dead }}</ref>
* [[안드로이드 (운영 체제)|안드로이드]] 모바일 장치 운영 체제는 3D 그래픽 렌더링을 위해 EGL을 사용한다.<ref>http://developer.android.com/about/versions/android-2.3-highlights.html</ref>
* [[Wayland]] 디스플레이 서버 프로토콜은 EGL을 사용한다.<ref>http://ppaalanen.blogspot.com/2012/03/what-does-egl-do-in-wayland-stack.html</ref> Wayland 클라이언트가 EGL을 사용하여 프레임버퍼에 직접 그려주는 방식으로 구현되었다.
* [[메사 3D]]는 이전에 이글(Eagle)로 알려진 EGL을 구현했다.<ref>[http://www.mesa3d.org/egl.html Mesa EGL]</ref>
* [[캐노니컬]]에 의한 [[Mir]] 디스플레이 서버 프로토콜은 EGL을 사용한다.<ref>{{웹 인용 |url=https://wiki.ubuntu.com/MirSpec |제목=보관된 사본 |확인날짜=2018-11-27 |보존url=https://web.archive.org/web/20130306104754/https://wiki.ubuntu.com/MirSpec |보존날짜=2013-03-06 |url-status=dead }}</ref>
* [[심플 다이렉트미디어 레이어|SDL]](Simple DirectMedia Layer) 툴킷은 EGL을 사용하기 위해 포팅되었다. [[프레임버퍼]]에 직접 쓰기위해 [[Xlib]]을 사용하거나 EGL을 사용할 수 있다.
* [[Raspberry Pi]] 싱글 보드 컴퓨터는 하드웨어 가속 3D 그래픽 랜더링에 EGL 인터페이스를 가지고 있다.<ref>http://elinux.org/RPi_VideoCore_APIs</ref>
* {{date|2013-10-04}}부터 독점적인 [[엔비디아]] 드라이버 331.13 BETA는 EGL API를 지원한다.<ref>{{웹 인용|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 |accessdate=2013-10-05}}</ref>
* [[타이젠]](Tizen) OS는 3D 그래픽 렌더링을 위해 OpenGL ES 1.1 또는 OpenGL ES 2.0과 함께 EGL을 사용한다<ref>{{웹 인용 |url=https://wiki.tizen.org/wiki/Porting_Guide/Graphics_and_UI |제목=보관된 사본 |확인날짜=2018-11-27 |archive-date=2015-04-27 |archive-url=https://web.archive.org/web/20150427204349/https://wiki.tizen.org/wiki/Porting_Guide/Graphics_and_UI |url-status= }}</ref>

== 구현 ==
* [[메사]]는 많은 그래픽 렌더링 API들의 [[자유-오픈 소스 소프트웨어]] 구현이다. EGL도 그중 하나이다.
* [[일반 버퍼 관리]](Generic Buffer Management)는 버퍼를 관리하는 API이다.

== 같이 보기 ==
* [[WGL (API)|WGL]] – OpenGL에 상응하는 [[마이크로소프트 윈도우|윈도우]] 인터페이스
* [[Core OpenGL|CGL]] – OpenGL에 상응하는 [[OS X]] 인터페이스
* [[GLX]] – OpenGL에 상응하는 [[X11]] 인터페이스
** [[AIGLX]] – GLX를 가속화 하기 위한 시도
* [[벌칸 (API)|WSI]] – Vulkan 윈도우 시스템 인터페이스 (WSI)는 OpenGL ES을 위해 EGL이 수행하는 작업을 Vulkan을 위해 수행.

== 각주 ==
{{각주}}

== 외부 링크 ==
* {{공식 웹사이트}}

{{크로노스 그룹 표준}}

[[분류:응용 계층 프로토콜]]
[[분류:API]]
[[분류:자유 그래픽 스포트웨어]]
[[분류:자유 윈도 시스템]]