Introduction to Virtual Reality
Pierre Boulanger
Department of Computing Science
Course Objectives
This
course is a graduate course introducing students to Virtual
Reality from a modern viewpoint called Virtualized
Reality. We will discuss the nuts and bolts of this rapidly growing
field from the point of view of display systems, graphic hardware, software
tools (VRML, Performer, and Java 3D), haptic rendering, sensor based model
creation, and telepresence. At the end of the course, the student should be
able to use virtual reality in its own domain of application and should have a
clear understanding of the various possibilities of this far-reaching
technology.
Course
Outline
Introduction
- Definition of Virtual
Reality, Augmented Reality, Virtualized Reality, and Telepresence;
- Brief History of Virtual
Reality
- Generic Configuration of
Virtual Reality Systems (image rendering systems, sound rendering systems,
haptic rendering systems, communication systems, physical modeling systems,
etc.)
- Brief overview of the
applications of Virtual Reality (in remote robotic control, in medicine,
in e-commerce, in communication, in industrial design)
VRFirst.ppt VRFirst.pdf
VRIntroduction.ppt
VRIntroduction.pdf
VRHistory.ppt
VRHistory.pdf
Short Review of Computer Graphics
- Projection
Matrix, Shading, VRML, etc.
VRBasicGraphics.ppt VRMLCourse.zip VRMLNotes.zip
VRBasicGraphics.pdf
The Tools of Virtual Reality
- Digitizing the Human Body (VRTracking.ppt
VRTracking.pdf)
- Three-dimensional
position sensors (magnetic, ultrasound, photogrammetric, mechanical, and
inertial sensors)
- Digitizing
fine body motion and forces (DataGlove, CyberGlove, PowerGlove, DHM
Dexterous Hand Master, etc.)
- Visual Rendering Systems (VRDisplays.ppt
VRDisplays.pdf)
- Basic
characteristics of human visual perception
- Stereoscopic
display systems (LCD, CRT, HMD, flat, panoramic, and hemispheric screens,
etc.)
- Detailed
analysis of advanced visualization systems such as CAVE, CABIN, and the
UofA VIZROOM
- New
display devices such as real-time auto-stereogram and retinal writing
- Sound Rendering Systems (VRSound.ppt,
VRSound.pdf)
- Basic
characteristics of human auditory perception
- Synthesis
of 3D sound (convolvotrons, Beachtrons and Acoustetrons, simple 3D sound)
- Haptic Rendering Systems (VRHaptics.ppt,
VRHaptics.pdf,
Notes.pdf)
- Human
requirements for good haptic perception
- Tactile
and force feedback (difference between tactile and force feedback,
various tactile feedback systems, haptic rendering, force feedback
systems)
- Combination of tactile and force feedback.
Computing Architectures
- Graphic requirement of human
perception vs. VR graphic engines
- Basic architecture of a VR
graphic engine (graphic pipeline, graphic cards for PC, etc.)
- Detail analysis of SGI Onyx
Infinite Reality 2 hardware
- Highly parallel VR graphic
engines
- Distributed virtual reality
systems
Modeling for VR
- Geometric Modeling (geometric
primitives, scene hierarchies, constructive geometry, etc.)
- Cinematic Model (object
motion, collision detection, navigation models, motion hierarchies, etc.)
- Physical Modeling (gravity,
collision, deformable model, surface texture, etc.)
- Behavioral Modeling
(Artificial life, responsive model, etc.)
- Model segmentation
(segmentation in cells, LOD, etc.)
- Modeling real-life from
sensors
Programming Environments for VR
(VRNetworked.ppt
, VRNetworked.pdf)
- Scene
editors for VR (RXScene from RELAX, MULTIGEN, 3D Studio Max)
- VR
for the WEB (VRML, VRML Script, and Java 3D)
- VR
APIs (Performer, DIRECTX, CAVE LIB, MRToolkit)
- Detailed
analysis of Performer 6.4 and Java 3D
- Tools
for real-time distributed VR systems (task decomposition, actors,
hierarchies, shared space, CAVERN SOFT, etc.)
VRML
Tutorial
Course on Performer
Applications of VR
- Augmented Reality (VRAR.ppt
, VRAR.pdf)
- Medicine and rehabilitation
(surgery, anatomic simulator, remote surgery, hybrid systems)
- VR games
- Arts (virtual actors, virtual
museum, virtual music, virtual theatre)
- Virtual product design (CAD
display, process simulation, virtual prototyping)
- Robotic (robot and virtual
reality, design of robots, robot programming, supervisory control, the
Mars Rover)
- Teaching systems (military
training 'SIMNET', NASA training systems, flight simulators)
- Virtual teleconferencing
systems
Future
trends in VR
- New VR graphic hardware
(xbox, real-time ray-tracing machines, etc.)
- New display systems (retinal
writing, real-time auto-stereo gram)
- Biological interfaces
- Voice and image based gesture
control (Smart Rooms)
- Programming and modeling
- Virtualized Reality
Prerequisite Knowledge
This course is addressed to students with a background in
graphics and computer vision. Prerequisite courses: - Introduction to Computer
Graphics and Introduction to Image Processing.
Lectures
Notes
The course
material includes notes posted on the web and additional assigned reading. A
detailed list of topics covered in assignments and by examinations will be
published as the course progresses.
Laboratory and Assignments
The purpose of
the laboratory assignments is to teach the basic concepts of VR. There will be
two assignments, which will be completed using UNIX workstations. You will be
using your Unix account for this course. For each assignment, I will introduce
the assignment and, if necessary, present additional materials to help you.
Assignments will be turned in electronically. Demos are required in the lab.
Each assignment will be marked based upon correct functionality of the program.
Examinations
There will be
in-class open-book midterm and a final examination. The exam will cover topics
presented in the lectures as well as additional reading
Midterm
Solutions
Project
All students
must complete a term project. Students must work
individually. The project consist of creating a VR application of their
own choice using either Java 3D or Performer. The results on the projects are to be demonstrated near the
end of the term. Completion of the project is a requirement for the course.
Evaluation
The proportion
of the final mark associated with the different components of the course is as
follows:
· Midterm
examination: 10%
· Final
examination: 20%
·
Project: 40%
·
Assignment #1: 15%
· Assignment
#2: 15%
Reference Books
VRML
2.0 Sourcebook
Andrea L. Ames, David R. Nadeau, John L. Moreland, John
Wiley & Sons Canada, Limited, 1996
3D Game Engine Design A Practical Approach to Real-Time
Computer Graphics, D. H. Eberly, Morgan Kaufmann
Publishers, 2001
Networked Virtual
Environments Design
and Implementation, S.
Singhal and M. Zyda, Addison-Wesley, 1999
Avatars
in Networked Virtual Environments, Daniel Thalmann, Nadia
Thalmann, John Wiley & Sons, June 1999
The QuickTime VR Book, S.A. Kitchens, Peachpit Press, 1995
Virtual Reality
Technology,
John Wiley & Sons, Burdea G. and P. Coiffet, 1994.
Force and Touch
Feedback for Virtual Reality, Wiley, Burdea, G., 1996.
Internet
Links
VR
Graphic Software
Java3D
VRML97 Specifications
Performer API
Microsoft DIRECTX
Parallel
Graphics
VR
Links to Laboratories and Groups
Canadian Working Group on Vitualized
Reality
Department of Computing Science AMMI
Laboratory
Many 3D Links
MEDIA LAB at MIT
Electronic Visualization
Laboratory at the University of Illinois in Chicago
Augmented Reality Links
Virtualized Reality at CMU
Augmented Reality & Computer Augmented Environments
Virtual Reality, Augmented Reality, Telerobotics, and other Links
Telerobotique
at NASA