Skip to content

Most visited

Recently visited


Displaying Graphics with OpenGL ES

Dependencies and prerequisites

  • Android 2.2 (API Level 8) or higher
  • Experience building an Android app

You should also read

Try it out

Download the sample

The Android framework provides plenty of standard tools for creating attractive, functional graphical user interfaces. However, if you want more control of what your application draws on screen, or are venturing into three dimensional graphics, you need to use a different tool. The OpenGL ES APIs provided by the Android framework offers a set of tools for displaying high-end, animated graphics that are limited only by your imagination and can also benefit from the acceleration of graphics processing units (GPUs) provided on many Android devices.

This class walks you through the basics of developing applications that use OpenGL, including setup, drawing objects, moving drawn elements and responding to touch input.

The example code in this class uses the OpenGL ES 2.0 APIs, which is the recommended API version to use with current Android devices. For more information about versions of OpenGL ES, see the OpenGL developer guide.

Note: Be careful not to mix OpenGL ES 1.x API calls with OpenGL ES 2.0 methods! The two APIs are not interchangeable and trying to use them together only results in frustration and sadness.


Building an OpenGL ES Environment
Learn how to set up an Android application to be able to draw OpenGL graphics.
Defining Shapes
Learn how to define shapes and why you need to know about faces and winding.
Drawing Shapes
Learn how to draw OpenGL shapes in your application.
Applying Projection and Camera Views
Learn how to use projection and camera views to get a new perspective on your drawn objects.
Adding Motion
Learn how to do basic movement and animation of drawn objects with OpenGL.
Responding to Touch Events
Learn how to do basic interaction with OpenGL graphics.

Additional sample code

To download NDK samples, see NDK Samples.

This site uses cookies to store your preferences for site-specific language and display options.

Get the latest Android developer news and tips that will help you find success on Google Play.

* Required Fields


Suivez Google Developers sur WeChat

Browse this site in ?

You requested a page in , but your language preference for this site is .

Would you like to change your language preference and browse this site in ? If you want to change your language preference later, use the language menu at the bottom of each page.

This class requires API level or higher

This doc is hidden because your selected API level for the documentation is . You can change the documentation API level with the selector above the left navigation.

For more information about specifying the API level your app requires, read Supporting Different Platform Versions.

Take a short survey?
Help us improve the Android developer experience. (Dec 2017 Android Platform & Tools Survey)