Symbian3/SDK/Source/GUID-04D917A1-E1A0-5149-9660-80A1146D0984.dita
author Dominic Pinkman <dominic.pinkman@nokia.com>
Fri, 11 Jun 2010 12:39:03 +0100
changeset 8 ae94777fff8f
parent 7 51a74ef9ed63
child 13 48780e181b38
permissions -rw-r--r--
Week 23 contribution of SDK documentation content. See release notes for details. Fixes bugs Bug 2714, Bug 462.

<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (c) 2007-2010 Nokia Corporation and/or its subsidiary(-ies) All rights reserved. -->
<!-- This component and the accompanying materials are made available under the terms of the License 
"Eclipse Public License v1.0" which accompanies this distribution, 
and is available at the URL "http://www.eclipse.org/legal/epl-v10.html". -->
<!-- Initial Contributors:
    Nokia Corporation - initial contribution.
Contributors: 
-->
<!DOCTYPE concept
  PUBLIC "-//OASIS//DTD DITA Concept//EN" "concept.dtd">
<concept id="GUID-04D917A1-E1A0-5149-9660-80A1146D0984" xml:lang="en"><title>OpenGLES
Collection Overview</title><shortdesc>OpenGL ES is a cross-platform API for 2D and 3D graphics on embedded
systems. It consists of a subset of desktop OpenGL, which is a widely adopted
2D and 3D graphics API, creating a low-level interface between software and
graphics acceleration. OpenGL ES includes profiles for floating-point and
fixed-point systems and the EGL specification for portably binding to native
windowing systems. </shortdesc><prolog><metadata><keywords/></metadata></prolog><conbody>
<p> <b>Variant</b>: <xref href="GUID-D93978BE-11A3-5CE3-B110-1DEAA5AD566C.dita">ScreenPlay</xref> and <xref href="GUID-F64E6551-670E-5E12-8103-DE504D3EC94F.dita">non-ScreenPlay</xref>. </p>
<p>The Symbian platform supports two versions of OpenGL ES: </p>
<ul>
<li id="GUID-09B72D5B-EF77-5317-90C9-B048241D8569"><p>OpenGL ES 1.X, which
is for fixed function hardware and offers acceleration, image quality and
performance. </p> </li>
<li id="GUID-F9E98024-8198-586D-8E97-C00EB090158E"><p>OpenGL ES 2.X, which
is for programmable hardware and enables fully programmable 3D graphics and
shader objects. </p> </li>
</ul>
<p>OpenGL ES is an open standard developed by the Khronos Group (<xref href="http://www.khronos.org/" scope="external">www.khronos.org</xref>). </p>
<p>The following diagram shows the direct use of OpenGL ES by an application
through the public OpenGL ES interface together with EGL. On the Symbian platform,
both OpenGL ES and EGL have a component (shown in blue) that declares the
interface, and both require an implementation that implements that interface
(shown in green). </p>
<fig id="GUID-41677786-E59F-5DF7-97BB-05D7FDA0950C">
<title>           OpenGLES component relationships          </title>
<image href="GUID-D5A05EE7-5559-55CC-A839-478B4F513CE4_d0e204270_href.png" placement="inline"/>
</fig>
<p>It is possible for the OpenGL ES and EGL implementations to communicate
through a private interface that is not standardized by Symbian. </p>
<ul>
<li id="GUID-537E019E-A415-5C6B-A144-D5AD3494E35B"><p>The <xref href="GUID-CBC43846-22BB-5AAF-89FE-3CF4F11B76F6.dita">OpenGLES
Interface component</xref> provides a consistent interface to OpenGL ES on
the Symbian platform, enabling cross-device compatibility. The component includes
the Khronos-released header files (which incorporate some minor changes, such
as in-source comments). It also provides some Symbian-specific header files
and LIB, DEF and MMP files and UIDs. It does not provide any implementations
of the APIs. </p> </li>
<li id="GUID-712E1F08-6F6F-5E84-A9F1-3EC06D089E62"><p><xref href="GUID-8C6D4350-A38D-57A1-8C8D-C777EA7E8A3E.dita">EGL</xref> is
an interface between rendering APIs such as OpenGL ES or OpenVG and an underlying
native platform window system. </p> </li>

</ul>
</conbody><related-links>
<link href="GUID-AB93B01C-B6C2-5B24-ADEF-95706584D625.dita"><linktext>OpenGLES
Collection</linktext></link>
<link href="GUID-8C6D4350-A38D-57A1-8C8D-C777EA7E8A3E.dita"><linktext>EGL     
           Collection</linktext></link>
</related-links></concept>