Русская Википедия:OpenGL ES

Материал из Онлайн справочника
Перейти к навигацииПерейти к поиску

Файл:OpenGL ES logo (Nov14).svg
Логотип

OpenGL ES (OpenGL for Embedded Systems — OpenGL для встраиваемых систем) — подмножество графического интерфейса OpenGL, разработанное специально для встраиваемых систем — мобильных телефонов, карманных компьютеров, игровых консолей. OpenGL ES определяется и продвигается консорциумом Khronos Group, в который входят производители программного и аппаратного обеспечения, заинтересованные в открытом API для графики и мультимедиа.

Версии

В настоящее время существует уже несколько версий спецификации OpenGL ES. Версии 1.0 и 1.1 имеют профили common и common lite. Common lite отличается тем что поддерживает только вычисления на числах с фиксированной десятичной точкой, в то время как common поддерживает также и вычисления с плавающей точкой.

Версия Дата Описание / изменения
1.0 28 июля 2003 На основе спецификации OpenGL 1.3.
1.1 На основе спецификации OpenGL 1.5.
2.0 март 2007 На основе спецификации OpenGL 2.0.
3.0 август 2012 На основе спецификации OpenGL 3.3 (но без геометрических шейдеров).
3.1 март 2014
3.2 август 2015

Использование

OpenGL ES 1.0 был выбран в качестве официального 3D API в Symbian OS и для платформы Android.

OpenGL ES 1.0 плюс некоторые возможности 2.0 и Cg поддерживаются в PlayStation 3 как один из доступных графических API.

OpenGL ES 1.1 используется в качестве графической библиотеки в iPhone SDK.

OpenGL ES 2.0 Используется в Nokia N900, поддерживается в Symbian³, поддерживается в Android версии 2.2 и выше, используется в игровой консоли Pandora, а также в iPhone SDK 3.0 (только для iPhone 3GS и новых iPod Touch), поддерживается в Bada OS. Эти устройства также выбраны для использования WebGL (OpenGL для браузеров).

OpenGL ES 3.0 базируется на OpenGL 3.3 и OpenGL 4.2. OpenGL ES 3.0 поддерживается в Android версии 4.3 и выше. Краткий список нововведений:

  • occlusion queries, transform feedback, instanced rendering и поддержка 4-х и более rendering targets;
  • высококачественная ETC2/EAC-компрессия текстур;
  • новая версия GLSL ES языка шейдеров с полной поддержкой операций над целыми числами и 32-битными числами с плавающей запятой;
  • гарантированная поддержка floating-point-текстур, 3D-текстур, текстур глубины, текстур вершин, NPOT-текстур, R/RG-текстур и других;
  • обратная совместимость с OpenGL ES 2.0.

OpenGL ES 3.1 поддерживается в Android версии 5.0 и выше[1].

Apple и OpenGL ES

Компания Apple объявила устаревшими технологии OpenGL и OpenGL ES.[2]

Будущее

Нет планов для новой версии, Vulkan сместил приоритеты. [3]

Vulkan

Шаблон:Main

Vulkan, ранее известный как glNext, — новый API, отвечающий требованиям современных реалий и устраняющий основные недостатки OpenGL ES. Он предлагает более низкие накладные расходы и более непосредственный контроль над GPU. Khronos Group ведёт его разработку с 2014 года. Версия 1.0 была выпущена 16 февраля 2016 года[4].

См. также

  • GLBenchmark — тест измерения производительности OpenGL ES.
  • M3G — высокоуровневый стандарт трёхмерной графики Java ME. Может базироваться на OpenGL ES.
  • JSR-239 — низкоуровневый API мобильной трёхмерной графики для Java ME (прямой интерфейс к OpenGL ES).

Примечания

Шаблон:Примечания

Ссылки

Шаблон:Стандарты Khronos Group