"What if? Why not? Challenge the Convention! Let's do some incredible things!"
Pro Android 4
Our Android Books
Stuff I used to do
Download OSCON 2004 Presentation
Abstracting Texture Renderer (source code)
Android now has an excellent Tutorial on OpenGL ES 2.0!!!
Because OpenGL is stateful, how do you target a specific matrix especially in OpenGL ES 1.x (a fixed function pipeline)? For example we know that when we call glFrustum() it sets up the projection matrix, but the documentation suggests that if takes the current matrix and multiplies with the projection matrix? But there are more than one matrix: many matrices that are model, and at least one more that is a view matrix?
Frame buffers: Color, depth, and stencil. You can find real good explanation of this topic in chatper 10 of the free OpenGL red book
game development books and resources
GLSurfaceView and background!!
How to use and what are the arguments for this api. And any additional notes.
How are vertex colors interpolated in OpenGL?
How can I animate two figures independently?
How can I change the orientation of the android emulator?
How can I create a MVP matrix for ES 2.0 in Android?
How can I debug OpenGL errors?
How can I draw multiple figures
how can i scroll my drawing
In es 1.0, I was able to use indexing into an existing vertex buffer in the glDrawElements method. This allowed me to specify only 4 points for drawing a square or rectangle. without the indexing I would have needed 6 points making up 2 triangles. How could I do this in ES 2.0?
How to draw a regular polygon
how to draw on a canvas
How to run Android applications on the device from Eclipse ADB
vertex shader. fragment shader. Mistakes I made. links to other resource and so on...
How to work with matrices in OpenGL ES 2.0
Is there an OpenGL GLUT for Android?
Modelling tools for 3D
OpenGL 1.5 sample code
opengl books and resources
OpenGL ES 2.0 is not backward compatible with 1.x
OpenGL ES 2.0 Sample Code
OpenGL support in the Android Emulator?
Relationship between texture target and texture name?
Tell me about Depth in OpenGL? and how to hide hidden surfaces.
Tell me about vertex shader
Tell me one more time what the opengl pipeline is...
this is a demo
Version numbers for OpenGL, OpenGL ES, and GLSL
My triangles are all messed up. Then the mistake boiled down to this piece of code
//b1, b4, f3
1,-1,1, -1,-1,1 -1,-1,0,
//b1, f3, f4
1,-1,1, -1,-1,0, 1,-1,0
Compiler is fine. Just my triangle! Can you spot the mistake! it is a fun mistake.
what are model/object/eye/world/screen coordinates?
What are OpenGL modelling tools?
What are reserved variable names in GLSL?
You see in OpenGL literature the terms VAO and VBO being referred. These are Vertex Array Object and Vertex Buffer Object respectively. A vertex buffer deals with the memory area storing the vertex information. Pure data byte after byte. A VAO, vertex array object, is a structure that describes how opengl should interpret the data that in the VBO.
What are vertex attributes in OpenGL ES?
What happened to glTexEnvf in GLES 2.0?
What is a fragment in OpenGL?
OpenGL APIs require two things to work. They need a place to manage the state of the OpenGL like a working memory. This is the rendering context. Then they also need a surface to draw on. The buffers are attached to the surface. Example buffers are color buffer, stencil buffer, and depth buffer.
Setting up and managing these two aspects is the realm of the underlying OS. In OpenGL ES there is a standard called EGL that deals with these integration APIs
Each vertex in opengl can have a surface normal. A surface normal is a perpendicular vector with respect to the tangential surface at that vertex. So if you have a triangulated vertices on the surface of a sphere then the normal at each vertex may not be parallel to each other.
What is allowed between two calls to glDrawElements?
How to add the primary and secondary colors of a fragment (pixel)
Modifying the color of a pixel/fragment based on how far or near it is in the view
The output of frament processing is to figure out the target pixels and their characteristics. However before these pixels are written to the framebuffer to become part of the screen they have to undergo number of tests. Does the pixel position in the framebuffer is currently owned by this OpenGL context or Is that controlled by someone else. If the depth testing is on, is this pixel behind another pixel? Is there a stencil active that may block this pixel from showing? These are are called fragment tests. If the pixels don't pass the test they won't be written to the frame buffer.
What is Gouraud Shading?
What is OpenGL ES: A definition and scope
Nice explanation from opengl.org
OpenGL allows extensions by hardware vendors. OpenGL has a protocol and low level API to discover what these extensions are and the supported functions. Using extensions in your C++ code is - unfortunately - platform specific. The address of the function (function pointer) must be retrieved from the OpenGL implementation (e.g. hardware driver). Under Windows this can be done using "wglGetProcAddress".
GLEW is a common API to write portable code which internally hides the platform specific detail. So you will be downloading GLEW for each platform and the client programs can stay portable as long as the target platform supports a GLEW implementation.
OpenGL can manipulate a frame buffer for a screen. The pixels in a window which are controlled by an opengl context belongs to this opengl. If this is overlaid by another window then OpenGL needs to know it doesn't own these pixels.
What is precision qualifier in gls?
you have the standard input and output variables. You also have some types that are unique to glsl. For example attribute variables that are specific to a vertex. There are "uniform" variables that cuts across all vertices. There are reserved variables, there are built-in variables etc. This page will throw some light on this type of variables.
The order in which you indicate vertices determine the clock-wise or anti-clock-wise orientation of that geometry (such as a triangle or a square etc). As you follow that winding see how a right-hand-screw will advance. The direction of the advance will tell you which surface is facing outwards and which surface is facing inwards.
Who recovers the memory?
2. OpenGL redbook
3. Wayne (wsu course material)
0. ES 1.0 Khronos api
1. ES 2.0 api
2. JSR 239
3. Prev Notes
4. Android OpenGL API
5. Android OpenGL Doc
6. Khronos Forum
More docs on
4.0 Users Guide??
Android SDK Essentials
3.0 user guide
2.3 user guide
2.2 user guide
2.3 Release Notes
1. home page
9.1 git source
11. Google IO
14. Java notes
1. Projects for 2.0 book
3. Projects for 3.0
5. Android 1.0
Sort by Date
Sort by Name
My Web Logs
Made possible by