Русская Википедия:OpenGL ES
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
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