The visual display transformation for virtual reality (VR) systems is
typically much more complex than the standard viewing transformation d
iscussed in the literature for conventional computer graphics. The pro
cess can be represented as a series of transformations, some of which
contain parameters that must match the physical configuration of the s
ystem hardware and the user's body, Because of the number and complexi
ty of the transformations, a systematic approach and a thorough unders
tanding of the mathematical models involved are essential. This paper
presents a complete model for the visual display transformation for a
VR system; that is, the series of transformations used to map points f
rom object coordinates to screen coordinates, Virtual objects are typi
cally defined in an object-centered coordinate system (CS), but must b
e displayed using the screen-centered CSs of the two screens of a head
-mounted display (HMD). This particular algorithm for the VR display c
omputation allows multiple users to independently change position, ori
entation, and scale within the virtual world, allows users to pick up
and move virtual objects, uses the measurements from a head tracker-to
immerse the user in the virtual world, provides an adjustable eye sep
aration for generating two stereoscopic images, uses the off-center pe
rspective projection required by many HMDs, and compensates for the op
tical distortion introduced by the lenses in an HMD. The implementatio
n of this framework as the core of the UNC VR software is described, a
nd the values of the UNC display parameters are given. We also introdu
ce the vector-quaternion-scalar (VQS) representation for transformatio
ns between 3D coordinate systems, which is specifically tailored to th
e needs of a VR system, The transformations and CSs presented comprise
a complete framework for generating the computer-graphic imagery requ
ired in a typical VR system. The model presented here is deliberately
abstract in order to be general purpose; thus, issues of system design
and visual perception are not addressed. While the mathematical techn
iques involved are already well known, there are enough parameters and
pitfalls that a detailed description of the entire process should be
a useful tool for someone interested in implementing a VR system.