Questions tagged [opengl-es-2.0]

Subset of the OpenGL 3D graphics API designed for embedded devices such as mobile phones. This version 2.0 eliminates most of the fixed-function rendering pipeline in favor of a programmable one.

OpenGL for Embedded Systems (OpenGL ES) is a subset of the OpenGL 3D graphics API designed for embedded devices such as mobile phones, PDAs, and video game consoles. OpenGL ES is managed by the not-for-profit technology consortium, the Khronos Group, Inc.

OpenGL ES 2.0 was publicly released in March 2007. It eliminates most of the fixed-function rendering pipeline in favor of a programmable one. Almost all rendering features of the transform and lighting pipelines, such as the specification of materials and light parameters formerly specified by the fixed-function API, are replaced by shaders written by the graphics programmer. As a result, OpenGL ES 2.0 is not backwards compatible with OpenGL ES 1.1. Some incompatibilities between the desktop version of OpenGL and OpenGL ES 2.0 persisted until OpenGL 4.1, which added the GL_ARB_ES2_compatibility extension.

More details at http://en.wikipedia.org/wiki/OpenGL_ES#OpenGL_ES_2.0

Resources:

3921 questions
23
votes
3 answers

Clipping-planes in OpenGL ES 2.0

I need to clip a few hundred objects under a clipping plane in OpenGL ES 2.0 and would appreciate ideas from people more experienced with this subset of OpenGL. In OpenGL ES 1.x there is glClipPlane. On the desktop you have glClipPlane, or…
Emil Romanus
  • 794
  • 1
  • 4
  • 8
22
votes
7 answers

Getting started with OpenGL ES 2.0 on Windows

This is a very specific questions about the steps necessary to Build a simple OpenGL ES 2.0 program on the Windows platform. The environment is Visual Studio with unmanaged C++. I go to the Khronos.org site and, frankly, find it a bit opaque…
Buggieboy
  • 4,636
  • 4
  • 55
  • 79
21
votes
2 answers

How do I replace glBegin() and related functions in OpenGL ES 2.0?

I have OpenGL code like the following that I'd like to port to OpenGL ES 2.0: for (surfnum=0;surfnum < surftotal;surfnum++){ for (i=0;i
Sudhanshu Gupta
  • 2,255
  • 3
  • 36
  • 74
21
votes
0 answers

Android Studio GPU monitor will not work for OpenGLES2

How can I monitor the GPU usage of my OpenGLES2 app on Android? The GPU monitor in Android Studio seems to ignore OpenGL GPU usage. Please note that I have enabled gpu rendering profile in developer options and set it to Show in adb shell dumpsys…
21
votes
3 answers

Real time vector-based OSM renderer in iOS (using OpenGL ES)

I'm looking into a solution that will allow to use OpenStreetMap data to render a 2D top-view vector-based map in iOS, instead of using pre-rendered tiles from a server. Similar to Apple and Google Maps in iOS6+. I've done extensive research on this…
Calin
  • 2,110
  • 1
  • 21
  • 36
21
votes
7 answers

How to learn and use OpenGL ES 2.0? I just don't get it - serious Qn.

This is a serious question, I am "stuck" at this point between understanding it and not at all. I got very confused with the time reading different resources and would like someone to point me in the right direction. I am working with Android…
Baruch
  • 1,618
  • 5
  • 23
  • 42
20
votes
2 answers

What is best practice for batch drawing objects with different transformations?

I'm conceptualising a good approach to rendering as many disjointed pieces of geometry with a single draw call in OpenGL, and the wall I'm up against is the best way to do so when each piece has a different translation and maybe rotation, since you…
johnbakers
  • 24,158
  • 24
  • 130
  • 258
20
votes
3 answers

Android OpenGL ES 2.0 screen coordinates to world coordinates

I'm building an Android application that uses OpenGL ES 2.0 and I've run into a wall. I'm trying to convert screen coordinates (where the user touches) to world coordinates. I've tried reading and playing around with GLU.gluUnProject but I'm either…
StackJP
  • 1,450
  • 2
  • 16
  • 32
19
votes
3 answers

OpenGL ES 2.0 debugging

So, I have an OpenGL ES 2.0 app. It compiles and runs in the iPhone/iPad simulators, on a real iPhone/iPad, and under Windows using Imgtec's emulator libraries (i.e. PVRVframe). In said app, I have one particular draw call that results in no pixels…
moonshadow
  • 86,889
  • 7
  • 82
  • 122
19
votes
4 answers

How to load and display .obj file in Android with OpenGL-ES 2

I am trying to load an .obj file into my Android application and display it using OpenGL 2. You can find the file here: EDIT: I removed the file, you can use any .obj file that contains the values mentiones below for testing. There are a lot of…
Björn Kechel
  • 7,933
  • 3
  • 54
  • 57
19
votes
1 answer

GLKTexture is not correctly mapped since iOS6

I got a strange behavior since Xcode 4.5 and the iOS 6 SDK when using textures on my 3D objects. The problem also appears on my mac application when building against OS X 10.8 SDK. I am using OpenGL ES 2.0 on iOS and OpenGL legacy profile ( < 3.0 )…
SMP
  • 586
  • 3
  • 12
19
votes
4 answers

Appropriate multiplication of matrices for rotation/translation

In order to rotate/translate object (rotation only about z-axis and translation only in xy plane) not just w.r.t to global center (device center) but also w.r.t other arbitrary points, I created an algorithm, which is correct (because all senior…
Patt Mehta
  • 4,110
  • 1
  • 23
  • 47
19
votes
1 answer

Android smooth game loop

I have problems with smooth scrolling in OpenGL (testing on SGS2 and ACE) I created simple applications - only fixed speed horizontal scrolling of images, or only one image (player) moving by accelerator, but it's movement is not smooth :-( I…
Commanche
  • 218
  • 1
  • 3
  • 11
18
votes
1 answer

Fragment shader and coloring a texture

I'm trying to make sense of adjusting texture colors with a fragment shader. My fragment shader is super simple: uniform sampler2D sampler; void main() { vec4 tex = texture2D ( sampler, uvVarying ); gl_FragColor = vec4(tex.r, tex.g, tex.b,…
vertti
  • 7,539
  • 4
  • 51
  • 81
18
votes
5 answers

Why do we need perspective division?

I know perspective division is done by dividing x,y, and z by w, to get normalized device coordinates. But I am not able to understand the purpose of doing that. Also, does it have anything to do with clipping?
Megharaj
  • 1,589
  • 2
  • 20
  • 32