Top Banner
3D API 3D API By By Clayton Azzopardi Clayton Azzopardi (Group 10) (Group 10)
9

3D API By Clayton Azzopardi (Group 10). Introduction Android uses the OpenGL ES 1.0 API Android uses the OpenGL ES 1.0 API Open Graphics Library for Embedded.

Jan 16, 2016

Download

Documents

Marcus Holt
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: 3D API By Clayton Azzopardi (Group 10). Introduction Android uses the OpenGL ES 1.0 API Android uses the OpenGL ES 1.0 API Open Graphics Library for Embedded.

3D API3D API

ByBy

Clayton AzzopardiClayton Azzopardi

(Group 10)(Group 10)

Page 2: 3D API By Clayton Azzopardi (Group 10). Introduction Android uses the OpenGL ES 1.0 API Android uses the OpenGL ES 1.0 API Open Graphics Library for Embedded.

IntroductionIntroduction

Android uses the OpenGL ES 1.0 API Android uses the OpenGL ES 1.0 API Open Graphics Library for Open Graphics Library for

Embedded SystemsEmbedded Systems

Cross-language and Cross-platform Cross-language and Cross-platform

Low-level and lightweight APILow-level and lightweight API

Used to draw 2D and 3D graphicsUsed to draw 2D and 3D graphics

Page 3: 3D API By Clayton Azzopardi (Group 10). Introduction Android uses the OpenGL ES 1.0 API Android uses the OpenGL ES 1.0 API Open Graphics Library for Embedded.

AdvantagesAdvantages

Open Industry Graphics StandardOpen Industry Graphics Standard

Innovative & Controlled EvolutionInnovative & Controlled Evolution

Ideal for Portable DevicesIdeal for Portable Devices

Based on OpenGLBased on OpenGL

Hardware & Software RenderingHardware & Software Rendering

Page 4: 3D API By Clayton Azzopardi (Group 10). Introduction Android uses the OpenGL ES 1.0 API Android uses the OpenGL ES 1.0 API Open Graphics Library for Embedded.

Functionality (1/3) – Functionality (1/3) – Geometry ProcessingGeometry Processing

Data typesData types

Vertex ArraysVertex Arrays Used for drawing objects Used for drawing objects Specify colours, normals and texture coordinatesSpecify colours, normals and texture coordinates

PrimitivesPrimitives e.g. POINTS, LINES, TRIANGLE etc.e.g. POINTS, LINES, TRIANGLE etc.

Coordinate TransformationCoordinate Transformation ViewportViewport DepthRangeDepthRange

Vertex Lighting Vertex Lighting

ShadeModelShadeModel

Page 5: 3D API By Clayton Azzopardi (Group 10). Introduction Android uses the OpenGL ES 1.0 API Android uses the OpenGL ES 1.0 API Open Graphics Library for Embedded.

Functionality (2/3) – Functionality (2/3) – RasterizationRasterization

Converting a primitive to a 2D Converting a primitive to a 2D image on the screenimage on the screen

Anti-aliasingAnti-aliasing

Polygons Face CullingPolygons Face Culling

Polygon OffsetPolygon Offset

Page 6: 3D API By Clayton Azzopardi (Group 10). Introduction Android uses the OpenGL ES 1.0 API Android uses the OpenGL ES 1.0 API Open Graphics Library for Embedded.

Functionality (3/3) – Functionality (3/3) – Texture MappingTexture Mapping

Applying an image data to a primitiveApplying an image data to a primitive Supports only 2D texturesSupports only 2D textures Texture Clamping (edge_clamp)Texture Clamping (edge_clamp) Wrapping (wrap_repeat)Wrapping (wrap_repeat) Compressed Texture Compressed Texture MultitextureMultitexture RGBA & Packed Pixel FormatsRGBA & Packed Pixel Formats FilteringFiltering

Page 7: 3D API By Clayton Azzopardi (Group 10). Introduction Android uses the OpenGL ES 1.0 API Android uses the OpenGL ES 1.0 API Open Graphics Library for Embedded.

Examples (1/2)Examples (1/2)

Page 8: 3D API By Clayton Azzopardi (Group 10). Introduction Android uses the OpenGL ES 1.0 API Android uses the OpenGL ES 1.0 API Open Graphics Library for Embedded.

Examples (2/2)Examples (2/2)

Page 9: 3D API By Clayton Azzopardi (Group 10). Introduction Android uses the OpenGL ES 1.0 API Android uses the OpenGL ES 1.0 API Open Graphics Library for Embedded.

ReferencesReferences http://www.khronos.org/opengles/ OpenGL ES Common/Common-Lite Profile

Specification Version 1.0.02 The OpenGLR Graphics System: A

Specification (Version 1.3) OpenGL® SUPERBIBLE Fourth

Editionhttp://www.enfis.it/archives/14 http://hcilab.uniud.it/MobiX3D/ http://www.ist-ultra.org/publications/

CAMTech_ULTRA_topics%2006-2006_v01-3.pdf