Presentation is loading. Please wait.

Presentation is loading. Please wait.

Advanced Graphics Algorithms Ying Zhu Georgia State University

Similar presentations


Presentation on theme: "Advanced Graphics Algorithms Ying Zhu Georgia State University"— Presentation transcript:

1 Advanced Graphics Algorithms Ying Zhu Georgia State University
3D Graphics on Mobile Devices

2 Applications Games Map visualization and navigation User interface
Animated message Screen savers

3 The challenges The challenges of developing 3D graphics content for mobile devices Battery power Heat management (no room for fans) Small, low resolution displays CPU Memory Slow system bus Download size limits Input devices Sound

4 The challenges The challenges of developing 3D graphics content for mobile devices (continued) No floating point hardware No integer divide hardware Multi-tasking (phone calls, texting, etc.) Device fragmentation (different operating systems, different graphics chips, different architectures, different input devices)

5 3D graphics APIs for mobile devices
Image courtesy of “Mobile Graphics” course at ACM SIGGRAPH 2007

6 OpenGL ES “OpenGL® ES is a low-level, lightweight API for advanced embedded graphics using well-defined subset profiles of OpenGL.” “It provides a low-level applications programming interface (API) between software applications and hardware or software graphics engines.”

7 OpenGL ES OpenGL ES is subset of OpenGL specification
Eliminated functions that are not suitable for mobile devices Lightweight and low footprint

8 OpenGL ES and OpenGL Not in OpenGL ES Kept in OpenGL ES 1.0 and 1.1
glBegin() and glEnd() Vertex array Polygons and quads Points, lines, triangles GLU functions Most of the lighting related functions Display lists, accumulation buffer 3D texture mapping, cube mapping 2D texture mapping, multitexturing, texture filter glPushMatrix() and glPopMatrix() Transformations DrawPixels, PolygonMode, polygon stipple, anti-aliased polygon rendering, etc. Vertex buffer objects, etc.

9 OpenGL ES OpenGL ES pipelines

10 OpenGL ES 2.0 Released in 2007 Replaced the fixed function pipeline with programmable shaders Transformation and lighting functions are replaced by shaders OpenGL ES 2.0 is not backward compatible with OpenGL ES 1.1

11 OpenGL ES 2.0

12 OpenGL ES 2.0

13 Software implementation
Reference implementation

14 Hardware implementation
Nvidia Sony PSP AMD ARM Toshiba Mitsubishi and more …

15 OpenGL ES usage OpenGL ES 1.0 OpenGL ES 1.1 OpenGL ES 2.0
Official 3D graphics API for Symbian, Android, and Playstation 3 OpenGL ES 1.1 3D library for iPhone SDK OpenGL ES 2.0 3D library for Pandora console

16 Mobile 3D Graphics API (M3G)
M3G is an optional API for Java ME The commonly used version is JSR-184 The latest version is JSR-297 Can be implemented on top of OpenGL ES M3G for Java ME is defined in package javax.microedition.m3g Can be quite slow compared with OpenGL ES or Mascot Capsule applications

17 M3G M3G is a scene graph based API
E.g. objects and transformations are organized in a tree hierarchical structure A high level API (e.g. supports hierarchical transformation and animation)

18 M3G Defines a scene graph structure World (the root) Node Object3D
Camera Group Light Mesh SinnedMesh Sprite3D MorphingMesh

19 M3G Defines a file format for managing and deploying 3D content
Provides a Loader class to download and deserialize graph nodes and node components, as well as entire scene graphs 

20 M3G Graphics3D A singleton 3D graphics context that can be bound to a rendering target. All rendering is done through the render() methods in this class. The most important class

21 M3G Other features supported by M3G VertexArray Transform Material
Texture2D RayIntersection Fog AnimationController AnimationTrack KeyframeSequence

22 Development tools NetBeans Mobility EclipseME And many other tools …
EclipseME And many other tools …

23 Other mobile graphics APIs
Mascot Capsule A real-time 3D rendering engine for mobile devices Emphasis on performance (faster than M3G) Used mostly in Japan Windows Mobile DirectX and Direct3D

24 Resources ACM SIGGRAPH 2007 course “The Mobile 3D Ecosystem”
IEEE Computer Graphics and Applications, Vol. 28, No. 4, 2008 special issue on Mobile Graphics “Mobile Computer Graphics” course at Lund University, Sweden

25 Resources OpenGL ES Mobile 3D Graphics API (M3G)
Mobile 3D Graphics API (M3G) JSR 184 ( JSR 297 ( Kari Pulli, Tomi Aarnio, Ville Miettinen, Kimmo Roimela, Jani Vaarala: Mobile 3D Graphics with OpenGL ES and M3G, Morgan Kaufmann, 2007


Download ppt "Advanced Graphics Algorithms Ying Zhu Georgia State University"

Similar presentations


Ads by Google