Recent improvements in technology of last generation mobile devices (smartphones, Personal Digital Assistants, Ultra-Mobile PCs) have opened up challenging new scenarios in 3-D ubiquitous visualization. Entertainment, cultural heritage, telemedicine, and distance learning are only a few of the disciplines that can take advantage of 3-D model visualization on mobile and hand-held devices. This chapter investigates the main methodologies used to display and navigate complex scenes and heavy datasets on mobile devices. Both local and remote rendering software techniques are considered with respect to solutions based on hardware acceleration. Moreover, issues related to the design of suitable graphics user interfaces are tackled. Finally, a solution for high performance visualization based on the remote rendering approach and enabling interactive manipulation of 3-D scenes composed by millions of polygons at 30 frames per second even on 50 Kbit/s wireless communication channels is presented.
Key Terms in this Chapter
3-D Computer Graphics: 3-D computer graphics are works of graphic art that are created with the aid of digital computers and specialized 3-D software.
Mobile/Portable/Hand-Held Devices: Hand-held devices are pocket-sized computing devices, typically using a small display for user output and a miniaturized keyboard for user input. Input and output devices can be combined into a single touch-screen based interface. These devices are becoming increasingly popular amongst those users requiring the assistance and convenience of a conventional computer in a mobile and wireless environment.
Streaming Video: A one-way video transmission over a data network. It is widely used on the Web as well as on private intranets to deliver video-on-demand. Unlike movie files that are played after they are downloaded, streaming video is played within a few seconds of requesting it, and the data is not stored permanently in the computer.
Voxel: A voxel (volume pixel) represents a quantity of 3-D data just as a pixel represents a point or a cluster of points in 2-D data. It is used in scientific and medical applications that process 3-D images.
GUI: A graphics user interface (GUI) is a particular case of user interface for interacting with a computer that employs graphic images and widgets in addition to text to represent the information and actions available to the user. Usually, actions are performed through direct manipulation of the graphic elements.
Multimodal Interfaces: Humans perceive the world through senses; communication through one sense is known as a mode. Multimodal interfaces try to combine two (or more) modes of communication to enhance user interaction.
GPU: Graphics processing units are specialized logic chips devoted to rendering 2-D or 3-D images. Display adapters contain one or more GPUs for fast graphics rendering.
Polygon: A polygon is a simple closed curve consisting entirely of a finite number of line segments. A polygon mesh is a 3-D object comprising a certain number of polygons joined at their edges and vertices.
Remote Visualization: In remote visualization (or remote computation) heavy graphics tasks are delegated to a high-end graphics server that actually performs the 3-D rendering and generates a 2-D frame that can be visualized on a remote device (possibly characterized by limited hardware resources).
Local Visualization: In local visualization (or local computation) graphics tasks are carried out by exploiting the capabilities of the actual device.
Rendering: Creating an image representing objects designed in a three-dimensional modeling program.
API: An application programming interface (API) is a language and message format used by an application program to communicate with the operating system or some other control program such as a database management system or communications protocol.