am dcf2f354: docs: simple update to OpenGl doc to update version support Note, this doc still needs a lot more work; this is a small step bug: 4395265

* commit 'dcf2f354963c8cdf5d70263782979cf1bd18b0bf':
  docs: simple update to OpenGl doc to update version support Note, this doc still needs a lot more work; this is a small step bug: 4395265
This commit is contained in:
Scott Main
2011-05-17 11:19:01 -07:00
committed by Android Git Automerger

View File

@ -5,13 +5,15 @@ parent.link=index.html
<p>Android includes support for high performance 3D graphics
via the OpenGL API &mdash; specifically, the OpenGL ES API.</p>
via the OpenGL API&mdash;specifically, the OpenGL ES API.</p>
<p>OpenGL ES is a flavor of the OpenGL specification intended for embedded
devices. Versions of <a href="http://www.khronos.org/opengles/">OpenGL ES</a> are loosely peered to versions of the primary
OpenGL standard. Android currently supports OpenGL ES 1.0, which corresponds
to OpenGL 1.3. So, if the application you have in mind is possible with OpenGL
1.3 on a desktop system, it should be possible on Android.</p>
<p>OpenGL ES is a flavor of the OpenGL specification intended for embedded devices. Versions of <a
href="http://www.khronos.org/opengles/">OpenGL ES</a> are loosely peered to versions of the primary
OpenGL standard. Beginning with Android 2.2, the platform supports OpenGL ES 2.0 (with
backward compatibility support for OpenGL ES 1.1). For information about the relative number of
Android-powered devices that support a given version of OpenGL ES, see the <a
href="http://developer.android.com/resources/dashboard/opengl.html">OpenGL ES Versions</a>
dashboard.</p>
<p>The specific API provided by Android is similar to the J2ME JSR239 OpenGL
ES API. However, it may not be identical, so watch out for deviations.</p>
@ -21,17 +23,18 @@ ES API. However, it may not be identical, so watch out for deviations.</p>
<p>Here's how to use the API at an extremely high level:</p>
<ol>
<li>Write a custom View subclass.</li>
<li>Write a custom {@link android.view.View} subclass.</li>
<li>Obtain a handle to an OpenGLContext, which provides access to the OpenGL functionality.</li>
<li>In your View's onDraw() method, get a handle to a GL object, and use its methods to perform GL operations.</li>
<li>In your View's {@link android.view.View#onDraw onDraw()} method, get a handle to a GL object,
and use its methods to perform GL operations.</li>
</ol>
<p>For an example of this usage model (based on the classic GL ColorCube), showing how to use
it with threads can be found in
<a href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/graphics/GLSurfaceViewActivity.html">com.android.samples.graphics.GLSurfaceViewActivity.java</a>.
<p>Several samples using OpenGL ES are available in the <a
href="{@docRoot}resources/samples/ApiDemos/src/com/example/android/apis/graphics/index.html">API
Demos</a> sample application.
</p>
<p>Writing a summary of how to actually write 3D applications using OpenGL is
<p>A summary of how to actually write 3D applications using OpenGL is
beyond the scope of this text and is left as an exercise for the reader.</p>
<h2>Links to Additional Information</h2>
@ -45,9 +48,6 @@ about OpenGL ES 1.0 (including a detailed specification) can be found
at <a title="http://www.khronos.org/opengles/1_X/"
href="http://www.khronos.org/opengles/1_X/">http://www.khronos.org/opengles/1_X/</a>.</p>
<p>The documentation for the Android {@link javax.microedition.khronos.opengles
OpenGL ES implementations} are also available.</p>
<p>The documentation for the Android OpenGL ES implementations are available in {@link
android.opengl} and {@link javax.microedition.khronos.opengles}.</p>
<p>Finally, note that though Android does include some basic support for
OpenGL ES 1.1, the support is <strong>not complete</strong>, and should not be relied
upon at this time.</p>