В чем разница между OpenGL ES и OpenGL?
OpenGL ES против OpenGL
Ответ 1
Двумя из наиболее значительных различий между OpenGL ES и OpenGL являются удаление glEegin... glEnd вызывающей семантики для примитивного рендеринга (в пользу вершинных массивов) и введение типов данных с фиксированной точкой для координат и атрибутов вершин для лучшей поддержки вычислительных возможностей встроенных процессоров, которым часто не хватает FPU
Посмотрите здесь: OpenGL_ES
Ответ 2
OpenGL ES - это opengl api для встроенных систем. Это проще, чем обычный opengl с точки зрения количества функций api, но может быть труднее использовать, так как вам придется использовать вершинные буферы и писать больше шейдеров.
Когда вы используете обычный opengl, вы можете использовать glBegin и glEnd, чтобы заключить примитивы геометрии, которые вам нужно рисовать, но при использовании Opengl ES вам придется использовать вершинные буферы. Я думаю, это касается проблем с производительностью.
В настоящее время существует две версии Opengl ES, версия 1.1 поддерживает только фиксированный конвейер рендеринга, а версия 2.0 поддерживает glsl-шейдер. Однако он не имеет фиксированного конвейера рендеринга. Другими словами, вам нужно будет написать свой собственный шейдер для всего.
Opengl ES в основном используется на мобильных телефонах и в Интернете (webgl). Согласно спецификации, ваш настольный драйвер opengl может поддерживать все opengl es apis.
Ответ 3
Также как добавить, что OpenGL 3.3 и OpenGL ES 2.0 в основном совместимы с использованием подмножества функций OpenGL 3.3. Мой пользовательский движок С++ использует одни и те же вызовы API с несколькими определениями для Android/IOS/Windows/OSX/Linux.
Среди основных отличий:
- Отсутствие поддержки шейдеров геометрии.
- нет min/max blending (для этого может быть расширение)
- нет примитива с четырьмя списками
- более ограниченные форматы текстур (особенно в отношении плавающей запятой)
- glGetTexImage недоступен
- нет Transform Feedback, то же самое для нескольких других дополнительных функций
Есть также много других различий, но охватывает несколько важных.
Ответ 4
Просмотрите обзор OpenGL ES здесь: http://www.khronos.org/opengles/
Короче говоря, ES является подмножеством Open GL для "встроенных систем". Конкретные различия будут зависеть от версий и наборов функций, которые вы сравниваете.
Ответ 5
OpenGL ES означает, что Open Graphics Library для встроенных систем (OpenGL ES или GLES) является подмножеством интерфейса API-интерфейса для рендеринга компьютерной графики OpenGL (API) для рендеринга 2D и 3D-компьютерной графики, такой как используемые в видеоиграх, обычно аппаратные - ускоренное использование графического процессора (GPU). Он предназначен для встроенных систем, таких как смартфоны, компьютерные планшеты, игровые консоли и КПК.
Официальный сайт OpenGL | ES: http://www.opengl.org/
вы также можете получить дополнительную информацию от wiki: http://en.wikipedia.org/wiki/OpenGL_ES
Ответ 6
Реестр OpenGL ES содержит подробные различия API между OpenGL ES и соответствующей версией OpenGL:
Однако не существует документа, содержащего различия для OpenGL ES 3.0.
Ответ 7
Я думаю, вы получите лучший ответ, если спросите: "Каковы различия между OpenGL и OpenGL ES".
Существуют глубокие различия между OpenGL ES 1.1 и ES 2.0, OpenGL 1.5 и 2.0 и OpenGL 3.0 и 4.0.
Как описывали другие, ES была написана для встроенных систем. Он также представляет собой первую "чистку дома" спецификации GL с момента ее создания. OpenGL имел: a) много способов сделать то же самое (например, вы могли бы нарисовать квадрат/прямоугольник двумя разными способами и разбить изображение в пикселях двумя разными способами и т.д.). ES проще, чем OpenGL с меньшим количеством функций в качестве общего утверждения, поскольку он предназначен для менее сложного оборудования.
Я призываю вас не смотреть на OpenGL ES 1.1, поскольку это прошлое, и не отражает того, как OpenGL или OpenGL ES будут двигаться в архитектуре в будущем.
Ответ 8
Терминология и версии довольно запутывают (особенно для новичков). Вот ссылка, которая дает обзор достаточно хорошо. Посмотрите, помогает ли это.
Ответ 9
Основное различие между ними заключается в том, что OpenGL ES создан для встроенных систем, таких как смартфоны, а OpenGL - для настольных компьютеров. На уровне кодирования OpenGL ES не поддерживает функции фиксированной функции, такие как glBegin/glEnd и т.д. OpenGL может поддерживать конвейер с фиксированной функцией (используя профиль совместимости).
Ответ 10
Современный ответ для ES 3.0 по сравнению с OpenGL 4.6 отличается от принятого ответа. Теперь все материалы с фиксированным контуром исчезли.
ES, для EMBEDDED SYSTEMS, намного менее надежна.
Ответ 11
просто говорящий, opengl - настольная версия, а opengl es - для встроенных систем, таких как сотовые телефоны, где ограничения памяти и производительности больше, чем у компьютеров. opengl es будет труднее использовать.
Ответ 12
OpenGL - это 2D и 3D-графический API, которые приносят тысячи приложений на самые разные компьютерные платформы.
OpenGL ES - это хорошо определенные подмножества рабочего стола OpenGL.
OpenGL® ES - это бесплатный кросс-платформенный API для полнофункциональной 2D и 3D-графики на встроенных системах, включая консоли, телефоны, приборы и транспортные средства. Он состоит из четко определенных подмножеств рабочего стола OpenGL,...
Смотрите ссылку .
P.S.
Спецификация акций WebGL с OpenGL ES, т.е. если вы изучили настольный OpenGL, просто узнать другие (OpenGL ES, WebGL).
Ответ 13
Ну как 2019.07
OGLES_3.2 и OPENGL_4.6 почти одинаковы, верно?