3d api by clayton azzopardi (group 10). introduction android uses the opengl es 1.0 api android uses...
TRANSCRIPT
3D API3D API
ByBy
Clayton AzzopardiClayton Azzopardi
(Group 10)(Group 10)
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
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
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
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
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
Examples (1/2)Examples (1/2)
Examples (2/2)Examples (2/2)
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