OpenGL ES vs OpenGL

What is the difference between OpenGL ES and OpenGL?

+77
opengl-es opengl
Dec 23 '10 at 13:44
source share
13 answers

Two of the most significant differences between OpenGL ES and OpenGL are the removal of glEegin ... glEnd calling semantics for primitive rendering (in favor of vertex arrays) and the introduction of fixed-point data types for vertex coordinates and attributes to better support the computing capabilities of embedded processors, which often not enough FPU

Take a look here: OpenGL_ES

+48
Dec 23 '10 at 13:47
source share
โ€” -

OpenGL ES is an opengl api for embedded systems. This is simpler than regular opengl in terms of the number of api functions, but it can be harder to use since you have to use vertex buffers and write more shaders.

When you use regular opengl, you can use glBegin and glEnd to enclose the geometry primitives you need to draw, but when using Opengl ES you will have to use vertex buffers. I think this is about performance issues.

There are currently two versions of Opengl ES, version 1.1 only supports the fixed rendering pipeline, and version 2.0 supports the glsl shader. However, it does not have a fixed rendering pipeline. In other words, you will need to write your own shader for everything.

Opengl ES is mainly used on mobile phones and on the Internet (webgl). According to the specification, your opengl desktop driver can support all opengl es apis.

+41
Aug 24 2018-11-18T00:
source share

As well as adding that OpenGL 3.3 and OpenGL ES 2.0 are mostly compatible using a subset of the features of OpenGL 3.3. My C ++ user engine uses the same API calls with multiple definitions for Android / IOS / Windows / OSX / Linux.

Among the main differences:

  • Lack of support for geometry shaders.
  • no min / max blending (there may be an extension for this)
  • no four-list primitive
  • more limited texture formats (especially regarding floating point)
  • glGetTexImage is not available
  • no transform feedback, same for a few other advanced features

There are also many other differences, but covers several important ones.

+32
Jun 23 '12 at 21:05
source share

View an overview of OpenGL ES here: http://www.khronos.org/opengles/

In short, ES is a subset of Open GL for "embedded systems." The specific differences will depend on the versions and feature sets that you are comparing.

+6
Dec 24 2018-10-12T00:
source share

OpenGL ES means that the Open Graphics Library for embedded systems (OpenGL ES or GLES) is a subset of the OpenGL computer graphics API (API) for rendering 2D and 3D computer graphics, such as those used in video games, usually hardware - accelerated use of the graphic processor (GPU). It is designed for embedded systems such as smartphones, computer tablets, game consoles and PDAs.

Official website of OpenGL | ES: http://www.opengl.org/

You can also get more information from the wiki: http://en.wikipedia.org/wiki/OpenGL_ES

+6
Apr 17 '14 at 14:17
source share

The OpenGL ES registry contains detailed API differences between OpenGL ES and the corresponding version of OpenGL:

However, there is no document containing differences for OpenGL ES 3.0.

+5
Jan 04 '13 at 17:52
source share

I think you will get a better answer if you ask: "What are the differences between OpenGL and OpenGL ES."

There are deep differences between OpenGL ES 1.1 and ES 2.0, OpenGL 1.5 and 2.0, and OpenGL 3.0 and 4.0.

As others have described, ES was written for embedded systems. It also represents the first "house cleaning" GL specification since its inception. OpenGL had: a) many ways to do the same (for example, you could draw a square / rectangle in two different ways and split the image in pixels in two different ways, etc.). ES is simpler than OpenGL with fewer features as a general statement, as it is designed for less complex hardware.

I urge you not to look at OpenGL ES 1.1, as this is the past, and does not reflect how OpenGL or OpenGL ES will move in architecture in the future.

+4
Jan 10 '13 at 18:46
source share

The terminology and versions are quite confusing (especially for beginners). Here is a link that gives an overview quite well. See if this helps.

OpenGL - Then and Now

+3
Jun 09 '15 at 9:23
source share

The main difference between the two is that OpenGL ES is for embedded systems like smartphones, and OpenGL is for desktops. At the coding level, OpenGL ES does not support fixed function functions such as glBegin / glEnd, etc. OpenGL can support a pipeline with a fixed function (using a compatibility profile).

+2
Dec 15 '15 at 16:29
source share

The modern answer for ES 3.0 differs from the accepted answer compared to OpenGL 4.6. Now all materials with a fixed outline have disappeared.

ES, for EMBEDDED SYSTEMS, is much less reliable.

+1
Aug 25 '17 at 0:34
source share

simply speaking, opengl is the desktop version, and opengl es is for embedded systems such as cell phones, where memory and performance limitations are greater than computers. opengl es will be harder to use.

0
Jun 27 2018-12-12T00:
source share

OpenGL is a 2D and 3D graphics API that brings thousands of applications to a wide variety of computer platforms.

OpenGL ES are well-defined subsets of the OpenGL desktop.

OpenGLยฎ ES is a free cross-platform API for full-featured 2D and 3D graphics on embedded systems, including consoles, telephones, appliances and vehicles. It consists of well-defined subsets of the OpenGL desktop, ...

See the link.

PS

WebGL stock specification with OpenGL ES, i.e. if you have studied desktop OpenGL, just find out others (OpenGL ES, WebGL).

0
Jul 06 '15 at 7:57
source share

Well, like 2019.07

OGLES_3.2 and OPENGL_4.6 are almost the same, right?

0
Jul 18 '19 at 11:17
source share



All Articles