EGL (API)

위키백과, 우리 모두의 백과사전.
둘러보기로 가기 검색하러 가기
EGL (OpenGL)
원저자크로노스 그룹
개발자크로노스 그룹
안정화 버전
1.5[1] / 2014년 3월 19일 (5년 전)(2014-03-19)
프로그래밍 언어C
운영 체제크로스 플랫폼
플랫폼크로스 플랫폼
종류API
웹사이트www.khronos.org

EGL은 (OpenGL, OpenGL ES 또는 OpenVG와 같은) 크로노스 렌더링 API와 기본 네이티브 플랫폼 윈도우 시스템 간의 인터페이스이다. EGL은 그래픽 컨텍스트 관리, 서피스/버퍼 바인딩, 렌더링 동기화를 처리하고 "다른 크로노스 API를 사용하여 고성능, 가속화된, 혼합모드 2D3D 렌더링"을 가능하게 한다.[2] EGL 비영리 기술 컨소시엄 크로노스 그룹에 의해 관리되고 있다.

약어 EGLKhronos Native Platform Graphics Interface에 언급되어 EGL 버전 1.2부터 시작된 initialism이다.[3] 버전 1.2이전에는 EGL 스펙의 이름이 OpenGL ES Native Platform Graphics Interface였다.[4] X.Org 개발 문서 용어집에서는 EGL을 "Embedded-System Graphics Library"로 정의한다.[5]

채택[편집]

OpenGL ES 또는 OpenVG 와 기본 윈도우 시스템간의 인터페이스로 EGL은 널리 채택 되었다
The Linux graphic stack
Wayland 클라이언트는 framebuffer에 직접 그리기 위해 EGL을 사용한다. 디스플레이 서버는 kernel (here: Linux kernel) 과 클라이언트 사이에 위치한다. 주어진 프로토콜을 통해 클라이언트와 통신한다.
Wayland display server protocol
Wayland (display server protocol)의 무료 구현은 EGLMesa 구현에 의존한다. libwayland-EGL이라 불리는 특별한 라이브러리가 framebuffer에 대한 액세스를 수용하기 위해 작성되었다.
  • BlackBerry 10BlackBerry Tablet OS 모바일 장치의 운영체제는 3D 그래픽 렌더링을 위해 EGL을 사용한다. Both support EGL version 1.4.[6]
  • 안드로이드 모바일 장치 운영 체제는 3D 그래픽 렌더링을 위해 EGL을 사용한다.[7]
  • Wayland 디스플레이 서버 프로토콜은 EGL을 사용한다.[8] Wayland 클라이언트가 EGL을 사용하여 프레임버퍼에 직접 그려주는 방식으로 구현되었다.
  • 메사 3D는 이전에 이글(Eagle)로 알려진 EGL을 구현했다.[9]
  • 캐노니컬에 의한 Mir 디스플레이 서버 프로토콜은 EGL을 사용한다.[10]
  • SDL(Simple DirectMedia Layer) 툴킷은 EGL을 사용하기 위해 포팅되었다. 프레임버퍼에 직접 쓰기위해 Xlib을 사용하거나 EGL을 사용할 수 있다.
  • Raspberry Pi 싱글 보드 컴퓨터는 하드웨어 가속 3D 그래픽 랜더링에 EGL 인터페이스를 가지고 있다.[11]
  • 2013년 10월 4일부터 독점적인 엔비디아 드라이버 331.13 BETA 는 EGL API를 지원한다.[12]
  • 타이젠(Tizen) OS는 3D 그래픽 렌더링을 위해 OpenGL ES 1.1 또는 OpenGL ES 2.0과 함께 EGL을 사용한다[13]

구현[편집]

같이 보기[편집]

  • WGL – OpenGL에 상응하는 Windows 인터페이스
  • CGL – OpenGL에 상응하는 OS X 인터페이스
  • GLX – OpenGL에 상응하는 X11 인터페이스
    • AIGLX – GLX를 가속화 하기 위한 시도
  • WSI – Vulkan 윈도우 시스템 인터페이스 (WSI)는 OpenGL ES을 위해 EGL이 수행하는 작업을 Vulkan을 위해 수행.

참조[편집]

외부 링크[편집]

  • EGL - 공식 웹사이트