Parallel and Distributed Virtual Reality System Architectures

Abstract

A Virtual Reality is a computer model of an environment, actual or imagined, presented to a user in as realistic a fashion as possible. Stereo goggles may be used to provide the user with a view of the modelled environment from within the environment, while a data-glove is used to interact with the environment. To simulate reality on a computer, the machine has to produce realistic images rapidly. Such a requirement usually necessitates expensive equipment.

This thesis presents an implementation of a virtual reality system on a transputer architecture. The system is general, and is intended to provide support for the development of various virtual environments. The three main components of the system are the output device drivers, the input device drivers, and the virtual world kernel. This last component is responsible for the simulation of the virtual world.

The rendering system is described in detail. Various methods for implementing the components of the graphics pipeline are discussed. These are then generalised to make use of the facilities provided by the transputer processor for parallel processing. A number of different decomposition techniques are implemented and compared. The emphasis in this section is on the speed at which the world can be rendered, and the interaction latency involved. In the best case, where almost linear speedup is obtained, a world containing over 250 polygons is rendered at 32 frames/second. The bandwidth of the transputer links is the major factor limiting speedup.

A description is given of an input device driver which makes use of a powerglove. Techniques for overcoming the limitations of this device, and for interacting with the virtual world, are discussed.

The virtual world kernel is designed to make extensive use of the parallel processing facilities provided by transputers. It is capable of providing support for multiple worlds concurrently, and for multiple users interacting with these worlds. Two applications are described that were successfully implemented using this system.

The design of the system is compared with other recently developed virtual reality systems. Features that are common or advantageous in each of the systems are discussed. The system described in this thesis compares favourably, particularly in its use of parallel processors.

Participants

Conference Papers (peer reviewed)

[1] Shaun Bangay, Peter Clayton, and David Sewry. Application of parallel processing to rendering in a virtual reality system. In Proceedings of the Transputer Research and Applications Conference, pages 47-59, University of Georgia, Athens, Georgia, USA, October 1994. IOS Press, Amsterdam. [PDF] [BibTeX]

[2] Shaun Bangay, Peter Clayton, and David Sewry. Application of parallel processing to rendering in a virtual reality system. In Transputer Applications and Systems '94 - Proceedings of the 1994 World Transputer Congress, pages 950-957. IOS Press, September 1994. [PDF] [BibTeX]

Masters Theses

[1] Shaun Bangay. Parallel implementation of a virtual reality system on a transputer architecture. Master's thesis, Computer Science Department, Rhodes University, Grahamstown, South Africa, November 1993. [PDF] [BibTeX]

Technical Reports

[1] Shaun Bangay. Creating virtual reality applications on a parallel architecture. Technical report, Virtual Reality Special Interest Group, Computer Science Department, Rhodes University, Grahamstown, South Africa, March 1994. [PDF] [BibTeX]

[2] Shaun Bangay. A comparison of virtual reality platforms. Technical report, Virtual Reality Special Interest Group, Computer Science Department, Rhodes University, Grahamstown, South Africa, December 1994. [PDF] [BibTeX]

Images