Virtual Reality
CP SC 6360

Note: Even though Robotics is listed as a prerequisite for this course, it is not even remotely required. Programming ablity is useful, as the assignments are largely interfacing with VR gear. C/C++ is the normal language used. Some graphics background is helpful, but not required, and people have been very successful in the past with no graphics/OpenGL experience.

Schedule: MWF 11:50-12:40
Location: WEB - 1450 (this is near the cafe in the new Warnock building)
Instructor: David Johnson
Office: 2875 WEB (ph) 585-1726
Lab:  Assignments will largely be done in MEB 2172. You will need U card access to this room, which the instructor will arrange at the beginning of the course.
Hours: I am generally available and through appointment.
Text:   My notes and rely on academic papers and tutorials. Currently evaluating a possible text as well.


This course will introduce students to the software, hardware, and concepts involved with the current state of the art in virtual reality (or virtual environments). This course will focus on using some of the recent consumer-grade equipment, such as the Kinect, Razer Hydra, and Nvidia Surround stereo. The main topics of the course will be hand/head/body tracking, physics simulation, and 3D interaction techniques. Some of the topics that likely will be presented include: The course will also include readings from the various conferences and journals where Virtual Reality research is published and exposure to various VR toolkits and software systems. Students should finish the course with:


Your course grade will depend on the following factors:
 Programming Assignments 60%
 Final Project Paper and Talk 15%
 Paper Critiques and Discussion 5%
 Exam and Quizzes 20%


Late Policy: Zero credit is given for late work, please just submit what you have for partial credit if unfinished. However, you may distribute three late days among your assignments (not the final project). You must notify me of your intent to use this privilege by the original due date. Also, additional leeway can be given for officially sanctioned University activities.

Cheating and Plagiarism: Students are encouraged to discuss approaches with one another and to help one another with computer infrastructure questions, but not to share or view another personís code. Some assignments will be done in small groups, in this case full collaboration is allowed within the group.

This is a graduate level course. As such, students are expected to behave in a professional manner.

Accommodations: The University of Utah seeks to provide equal access to its programs, services and activities for people with disabilities. If you will need accommodations in the class, reasonable prior notice needs to be given to the Center for Disability Services, 162 Union Building, 581-5020 (V/TDD). CDS will work with you and the instructor to make arrangements for accommodations.