OpenGL 2

satya - Saturday, June 06, 2009 11:54:57 AM

Goals


See samples
See broad trends. Scope of 3D
See products
What next?
What are the limitations?

satya - Saturday, June 06, 2009 11:57:29 AM

How do you textures in OPenGL?

Search for: How do you textures in OPenGL?

satya - Saturday, June 06, 2009 12:15:51 PM

relevent apis


glEnable(texture 2D)
glGenTextures
glBindTexture
glTexParameterf
glTexEnvf
GLUtils.texImage2D
bitmap.recycle
glActiveTexture

satya - Saturday, June 06, 2009 1:18:29 PM

what is texture mapping?

If you want to draw a large brick wall without texture mapping, for example, each brick must be drawn as a separate polygon. Without texturing, a large flat wall - which is really a single rectangle - might require thousands of individual bricks, and even then the bricks may appear too smooth and regular to be realistic.

satya - Saturday, June 06, 2009 1:20:33 PM

Wall paper analogy

Texture mapping allows you to glue an image of a brick wall (obtained, perhaps, by scanning in a photograph of a real wall) to a polygon and to draw the entire wall as a single polygon.

satya - Saturday, June 06, 2009 1:24:59 PM

What is a tesselation?

Search for: What is a tesselation?

satya - Saturday, June 06, 2009 1:25:13 PM

define:tesselate

Search for: define:tesselate

satya - Saturday, June 06, 2009 1:26:50 PM

wikipedia reference on tessel

wikipedia reference on tessel

satya - Saturday, June 06, 2009 1:28:15 PM

means tiling

means tiling

satya - Saturday, June 06, 2009 1:28:26 PM

example

satya - Saturday, June 06, 2009 1:31:13 PM

textures are rectangular arrays of color and alpha data

textures are rectangular arrays of color and alpha data

satya - Saturday, June 06, 2009 1:34:41 PM

texturing is computationally expensive

texturing is computationally expensive

satya - Saturday, June 06, 2009 1:39:44 PM

what are texture borders and mipmaps?

what are texture borders and mipmaps?

Search for: what are texture borders and mipmaps?

satya - Saturday, June 06, 2009 1:41:36 PM

enabling texturing

You need to enable texturing before drawing your scene. Texturing is enabled or disabled using glEnable() or glDisable() with the symbolic constant GL_TEXTURE_1D or GL_TEXTURE_2D for one- or two-dimensional texturing, respectively. (If both are enabled, GL_TEXTURE_2D is the one that is used.)

satya - Saturday, June 06, 2009 2:36:35 PM

Here is a tutorial

Here is a tutorial

satya - Saturday, June 06, 2009 2:43:22 PM

Another tutorial at gamedev.net

Another tutorial at gamedev.net

satya - Saturday, June 06, 2009 2:44:47 PM

gamedev.net

gamedev.net

satya - Saturday, June 06, 2009 3:47:41 PM

blender.org

blender.org

satya - Saturday, June 06, 2009 3:47:56 PM

blender and android

Search for: blender and android

satya - Saturday, June 06, 2009 3:53:40 PM

google 3D warehouse and android

Search for: google 3D warehouse and android

satya - Thursday, June 25, 2009 11:13:40 PM

Livey what is it?

Search for: Livey what is it?

satya - Thursday, June 25, 2009 11:14:01 PM

Chris worked for 6 years in the game space...

Chris worked for 6 years in the game space...

satya - Thursday, June 25, 2009 11:22:19 PM

a game may take 2 to 30 m dollars on higher platforms

a game may take 2 to 30 m dollars on higher platforms

satya - Thursday, June 25, 2009 11:25:18 PM

chris provides a baseline code for a game at this place

chris provides a baseline code for a game at this place

satya - Thursday, June 25, 2009 11:25:46 PM

2D side scroller parallex super mario etc

2D side scroller parallex super mario etc

satya - Saturday, October 02, 2010 8:42:09 AM

android opengl es 2.0

android opengl es 2.0

Search Google for: android opengl es 2.0

Search Android Developers Group for: android opengl es 2.0

Search Android Beginers Group for: android opengl es 2.0

Search Google Code for: android opengl es 2.0

Search Android Issues Database for: android opengl es 2.0

satya - Saturday, October 02, 2010 8:46:06 AM

As of Dec 2009

Although some devices support opengl es 2.0, there is no java wrapping available as of dec 2009.

satya - Saturday, October 02, 2010 8:49:17 AM

As of Feb 9th 2010, from David Turner

As of Feb 9th 2010, from David Turner

And at this link, from David Turner

OpenGL ES 2.0 headers and libraries are not available in the NDK yet. They are coming. Access from Java is also planned. The Android software renderer doesn't support GL ES 2.0, neither does the emulator.

satya - Saturday, October 02, 2010 8:52:09 AM

whats new with es 2.0


vertex shaders

satya - Saturday, October 02, 2010 8:53:07 AM

david turner romain guy opengl es 2.0

david turner romain guy opengl es 2.0

Search Google for: david turner romain guy opengl es 2.0

Search Android Developers Group for: david turner romain guy opengl es 2.0

Search Android Beginers Group for: david turner romain guy opengl es 2.0

Search Google Code for: david turner romain guy opengl es 2.0

Search Android Issues Database for: david turner romain guy opengl es 2.0

satya - Saturday, October 02, 2010 8:54:49 AM

Mar 11th 2010

Froyo should have the es 2.0 bindings.

satya - Saturday, October 02, 2010 8:57:24 AM

what is lwjgl

what is lwjgl

Search for: what is lwjgl

satya - Saturday, October 02, 2010 9:00:10 AM

I need to read this link

I need to read this link

satya - Saturday, October 02, 2010 9:03:21 AM

The following link has code for using es 2.0

The following link

satya - Saturday, October 02, 2010 9:06:20 AM

Here is a google code project for working with es 2.0 bindings

http://code.google.com/p/gl2-android/

satya - Saturday, October 02, 2010 9:07:58 AM

As of June 2010 emulator doesnt support es 2.0

As of June 2010 emulator doesnt support es 2.0

satya - Saturday, October 02, 2010 9:11:19 AM

See this link to see if a device supports es 2.0

See this link to see if a device supports es 2.0

satya - Saturday, October 02, 2010 9:14:17 AM

opengl es 2.0 android emulator

opengl es 2.0 android emulator

Search Google for: opengl es 2.0 android emulator

Search Android Developers Group for: opengl es 2.0 android emulator

Search Android Beginers Group for: opengl es 2.0 android emulator

Search Google Code for: opengl es 2.0 android emulator

Search Android Issues Database for: opengl es 2.0 android emulator

satya - Saturday, October 02, 2010 9:16:46 AM

opengl uses-feature

opengl uses-feature

Search Google for: opengl uses-feature

Search Android Developers Group for: opengl uses-feature

Search Android Beginers Group for: opengl uses-feature

Search Google Code for: opengl uses-feature

Search Android Issues Database for: opengl uses-feature

satya - Saturday, October 02, 2010 9:21:01 AM

Mario Zechner: an active developer of OpenGL on Android

Mario Zechner: an active developer of OpenGL on Android

satya - Saturday, October 02, 2010 10:08:31 AM

GLSurfaceView.setEGLContextClientVersion

GLSurfaceView.setEGLContextClientVersion

satya - Saturday, October 02, 2010 10:44:21 AM

es 2.0 api spec

http://www.khronos.org/opengles/sdk/docs/man/

satya - Saturday, October 02, 2010 12:06:45 PM

opengl es 2.0 tutorial

opengl es 2.0 tutorial

Search for: opengl es 2.0 tutorial

satya - Saturday, October 02, 2010 12:12:14 PM

Take a look at this tutorial on iphone from mobileorchard.com

Take a look at this tutorial on iphone

satya - Saturday, October 02, 2010 9:01:29 PM

opengl shading language

opengl shading language

satya - Saturday, October 02, 2010 9:02:34 PM

so what are shaders

so what are shaders

satya - Saturday, October 02, 2010 9:21:36 PM

writing opengl shaders

writing opengl shaders

Search for: writing opengl shaders

satya - Saturday, October 02, 2010 9:21:52 PM

opengl shaders tutorial example

opengl shaders tutorial example

Search for: opengl shaders tutorial example

satya - Saturday, October 02, 2010 9:28:00 PM

A simple shader from an android sample


uniform mat4 uMVPMatrix;
attribute vec4 aPosition;
attribute vec2 aTextureCoord;
varying vec2 vTextureCoord;
void main() {
  gl_Position = uMVPMatrix * aPosition;
  vTextureCoord = aTextureCoord;
}

satya - Saturday, October 02, 2010 9:31:09 PM

corresponding fragment stuff


precision mediump float;
 varying vec2 vTextureCoord;
 uniform sampler2D sTexture;
 void main() {
   gl_FragColor = texture2D(sTexture, vTextureCoord);
 }

satya - Saturday, October 02, 2010 9:43:34 PM

How can I do indexing vertices in new opengl es 2.0

How can I do indexing vertices in new opengl es 2.0

Search for: How can I do indexing vertices in new opengl es 2.0

satya - Saturday, October 02, 2010 9:45:41 PM

How can set color vertices buffer opengl es 2.0

How can set color vertices buffer opengl es 2.0

Search for: How can set color vertices buffer opengl es 2.0

satya - Saturday, October 02, 2010 10:07:29 PM

Looks you can do this as well


gl_FragColor = vec4(1.0, 0.0, 0.0, 1.0);

satya - Saturday, October 02, 2010 10:10:34 PM

opengl es 2.0 books

opengl es 2.0 books

Search for: opengl es 2.0 books

satya - Monday, October 04, 2010 2:18:25 PM

Droid support for es 2.0

Droid support for es 2.0

satya - Wednesday, October 06, 2010 4:22:44 PM

glvertexattribpointer

glvertexattribpointer

Search for: glvertexattribpointer

satya - Wednesday, October 06, 2010 4:24:29 PM

here is that api ref

here is that api ref

satya - Wednesday, October 06, 2010 4:29:40 PM

glEnableVertexAttribArray

glEnableVertexAttribArray

satya - Thursday, December 02, 2010 7:27:42 PM

See Robert Green's reply on the differences between iPhone and Android emulators

See Robert Green's reply on the differences between iPhone and Android emulators

Here is that text copied

FWIW - The iPhone simulator does not emulate the actual phone. Instead it routes calls to native OSX functions, simulating the environment. The Android emulator does in fact emulator an ARM CPU and runs Android OS on it, which is an important distinction between the two. When using GL in the iPhone simulator, you're actually running all of your GL on the PowerVR GLES emulation library, which uses hardware. It's great for developing but you still really need a device to test since a PC GPU is going to be many times faster than a mobile GPU.

So why can't the Android emulator do the same thing? Because the PVR lib is for x86/OSX and the Android emulator is running on ARM.