Scott Main | 50e990c | 2012-06-21 17:14:39 -0700 | [diff] [blame] | 1 | page.title=Displaying Graphics with OpenGL ES |
Joe Fernandez | 33baa5a | 2013-11-14 11:41:19 -0800 | [diff] [blame] | 2 | page.tags=open gl,graphics |
Scott Main | 50e990c | 2012-06-21 17:14:39 -0700 | [diff] [blame] | 3 | trainingnavtop=true |
Scott Main | 50e990c | 2012-06-21 17:14:39 -0700 | [diff] [blame] | 4 | |
| 5 | @jd:body |
| 6 | |
| 7 | <div id="tb-wrapper"> |
| 8 | <div id="tb"> |
| 9 | |
| 10 | <h2>Dependencies and prerequisites</h2> |
| 11 | <ul> |
| 12 | <li>Android 2.2 (API Level 8) or higher</li> |
| 13 | <li>Experience building an <a href="{@docRoot}training/basics/firstapp/index.html">Android |
| 14 | app</a></li> |
| 15 | </ul> |
| 16 | |
| 17 | <h2>You should also read</h2> |
| 18 | <ul> |
| 19 | <li><a href="{@docRoot}guide/topics/graphics/opengl.html">OpenGL</a></li> |
| 20 | </ul> |
| 21 | |
| 22 | <h2>Try it out</h2> |
| 23 | |
| 24 | <div class="download-box"> |
| 25 | <a href="{@docRoot}shareables/training/OpenGLES.zip" |
| 26 | class="button">Download the sample</a> |
| 27 | <p class="filename">OpenGLES.zip</p> |
| 28 | </div> |
| 29 | |
| 30 | </div> |
| 31 | </div> |
| 32 | |
| 33 | <p>The Android framework provides plenty of standard tools for creating attractive, functional |
| 34 | graphical user interfaces. However, if you want more control of what your application draws on |
| 35 | screen, or are venturing into three dimensional graphics, you need to use a different tool. The |
| 36 | OpenGL ES APIs provided by the Android framework offers a set of tools for displaying high-end, |
| 37 | animated graphics that are limited only by your imagination and can also benefit from the |
| 38 | acceleration of graphics processing units (GPUs) provided on many Android devices.</p> |
| 39 | |
| 40 | <p>This class walks you through the basics of developing applications that use OpenGL, including |
| 41 | setup, drawing objects, moving drawn elements and responding to touch input.</p> |
| 42 | |
| 43 | <p>The example code in this class uses the OpenGL ES 2.0 APIs, which is the recommended API version |
| 44 | to use with current Android devices. For more information about versions of OpenGL ES, see the <a |
| 45 | href="{@docRoot}guide/topics/graphics/opengl.html#choosing-version">OpenGL</a> |
| 46 | developer guide.</p> |
| 47 | |
| 48 | <p class="note"><strong>Note:</strong> Be careful not to mix OpenGL ES 1.x API calls with OpenGL |
| 49 | ES 2.0 methods! The two APIs are not interchangeable and trying to use them together only results in |
| 50 | frustration and sadness.</p> |
| 51 | |
| 52 | |
| 53 | <h2>Lessons</h2> |
| 54 | |
| 55 | <dl> |
| 56 | <dt><b><a href="environment.html">Building an OpenGL ES Environment</a></b></dt> |
| 57 | <dd>Learn how to set up an Android application to be able to draw OpenGL graphics.</dd> |
| 58 | |
| 59 | <dt><b><a href="shapes.html">Defining Shapes</a></b></dt> |
| 60 | <dd>Learn how to define shapes and why you need to know about faces and winding.</dd> |
| 61 | |
| 62 | <dt><b><a href="draw.html">Drawing Shapes</a></b></dt> |
| 63 | <dd>Learn how to draw OpenGL shapes in your application.</dd> |
| 64 | |
| 65 | <dt><b><a href="projection.html">Applying Projection and Camera Views</a></b></dt> |
| 66 | <dd>Learn how to use projection and camera views to get a new perspective on your drawn |
| 67 | objects.</dd> |
| 68 | |
| 69 | <dt><b><a href="motion.html">Adding Motion</a></b></dt> |
| 70 | <dd>Learn how to do basic movement and animation of drawn objects with OpenGL.</dd> |
| 71 | |
| 72 | <dt><b><a href="touch.html">Responding to Touch Events</a></b></dt> |
| 73 | <dd>Learn how to do basic interaction with OpenGL graphics.</dd> |
| 74 | </dl> |