Archive Pages Design$type=blogging

OpenGL ES Tutorial for Android - draw triangle in OpenGL ES

How to draw a triangle in Android OpenGL ES? There are about billions of Android devices activated till date, and more will add to the...

How to draw a triangle in Android OpenGL ES?

There are about billions of Android devices activated till date, and more will add to the list in coming days. These billions of devices have so many of games which uses the graphics to render the objects. These games use OpenGL API to show high performing graphics game.  These games are developed by designers, programmers, developers and others, but to begin this we need to start from a small step. Hence in this OpenGL ES Android tutorial we are going to learn how to draw a triangle in Android OpenGL ES.

Prerequisite

For this OpenGL ES Android tutorial you must know the OpenGL, basic Java, and about  Android Programming. Also your system should have the Android Studio (or Eclipse with ADT Plugin) and Android SDK installed. This Android game Development tutorial will use Android Studio.

Creating the new Project

1.       First Step in this OpenGL ES tutorial is to create a new project without any activity.
2.       Next we need to create 3 classes (3 separate java files) - “MainActivity.java” , “MainRenderer.java” and “MainSurfaceView.java”. These classes are essential for almost all OpenGL ES programming in Android. You can name them a Renderer, SurfaceView or whatever but it is good practice to do like this, it will help in understanding the files.

Main Activity

3.       In the MainActivity we are going to check if Android device support OpenGL ES with specific version. For this check out our previous OpenGL ES tutorial for Android.

MainSurfaceView

4.       Extend the MainSurfaceView with GLSurfaceView and create the constructor in the class. Also include all required imports. Following is the code snippet -

package in.ruks.openglobjects;
import android.content.Context;
import android.opengl.GLSurfaceView;
public class MainSurfaceView extends GLSurfaceView {
    public MainSurfaceView(Context context) {
        super(context);
    }
}

MainRenderer

5.       MainRenderer class will implement the GLSurfaceView.Renderer.  Call all the unimplemented methods in the class. Check the code below –

package in.ruks.openglobjects;
import android.opengl.GLES20;
import android.opengl.GLSurfaceView;
import javax.microedition.khronos.egl.EGLConfig;
import javax.microedition.khronos.opengles.GL10;
public class MainRenderer implements GLSurfaceView.Renderer {
    @Override
    public void onSurfaceCreated(GL10 gl10, EGLConfig eglConfig) {
    }

    @Override
    public void onSurfaceChanged(GL10 gl10, int i, int i2) {
    }

    @Override
    public void onDrawFrame(GL10 gl10) {
    }
}

We are going to render our object here in this class and draw the object. 

Our Triangle Class

6.       Next Step is to create a new class, name  it “Triangle.java”.  This is the class where we are going to define vertices for our object (which is triangle). Here are going to define color for the vertices as well. We have to create buffer for each.
private FloatBuffer vertexBuffer;
    private float vertices[] = {
        0.0f , 0.5f,0.0f,
        -0.5f , -0.5f, 0.0f,
        0.0f , 0.5f, 0.0f
    };
    private float color[] = new float[]{ 0 .0f ,0.5f,0.0f,1.0f };  
           
First we have defined the buffer, which will contain the vertices. Next we have defined the vertices for each side of the triangle.



Final Thought

Reference

http://developer.android.com/reference/android/pm/ ConfigurationInfo.html
http://developer.android.com/guide/topics/graphics/opengl.html


COMMENTS

Name

3D Bi-Cycle 3D Game 3D Laptop 3D Objects 3D Projects 3D Zoo Algorithm Android Aquarium Bellman-Ford Algorithm Block Breaker Blockshooting Bucket Sort C# Chess Clock Code Blocks Colors Complex Project Complex Projects Crab Pong Cross Zero DSAV Escapa First Come First Serve Fluids Font Demo Games Gear Motion GlutDino Glutplane Graphics Editor iOS iPhone Java Java OpenGL Graphics Programming Light Torus Linked List Ludo Board Game Mancala board games Memory blocks game Memory Game Menu Mickey Mouse Minesweeper Miniature Steam Engine moth Motion Blur MoveLight moving car Moving Ship Multiplex Networking Based Project Nuclear Power Plant Olympic opengl c++ examples OpenGL ES OpenGL Tutorial Origami OS Based Projects Paint Paper Folding Particles Drop Path Finding ping pong Pong Game Project Report Projects Report Puzzles qix like Random Flowing lines Rigid Body Rings Robot sample c++ opengl code Screen Saver Screen Saver Ship Shadow Cube Shadowfun Ship Iceberg Simple Drawing Simple Haloed Lined Wireframe Simple Move Light Simple Project Simulation SNAKE XENZIA GAME Solar system Sorting Sphere Spot Light Swing Stars Taj Mahal The Edge Game Tic Tac Toe Tower of Hanoi Traffic Signal Transformation Triangular Animation Tutorial water ripple effects Whirlpool
false
ltr
item
OpenGL Projects: OpenGL ES Tutorial for Android - draw triangle in OpenGL ES
OpenGL ES Tutorial for Android - draw triangle in OpenGL ES
OpenGL Projects
http://www.openglprojects.in/2015/08/opengl-es-tutorial-for-android-draw-triangle-in-opengl-es.html
http://www.openglprojects.in/
http://www.openglprojects.in/
http://www.openglprojects.in/2015/08/opengl-es-tutorial-for-android-draw-triangle-in-opengl-es.html
true
2020194800836807725
UTF-8
Not found any posts VIEW ALL Readmore Reply Cancel reply Delete By Home PAGES POSTS View All RECOMMENDED FOR YOU LABEL ARCHIVE SEARCH Not found any post match with your request Back Home Sunday Monday Tuesday Wednesday Thursday Friday Saturday Sun Mon Tue Wed Thu Fri Sat January February March April May June July August September October November December Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec just now 1 minute ago $$1$$ minutes ago 1 hour ago $$1$$ hours ago Yesterday $$1$$ days ago $$1$$ weeks ago more than 5 weeks ago