Virtual reality (VR) technology transports us to real or synthetic places that may be inaccessible, breathtaking, complex beyond our wildest imagination, or just simple and relaxing. Applications include entertainment, social interaction, virtual travel, remote training, architectural walkthroughs, cultural appreciation, and learning enhancement.
Although VR has been around for decades, the cost of entry has previously been high because of advanced, expensive equipment and computing resources. Thanks to widespread progress in display, sensing, and computational technology, the newest VR systems are cheap, lightweight, and easy to program. This has caused a flood of excitement as almost anyone can pick up a VR headset and start developing experiences.
The purpose of this course is to provide students with both a deep understanding of the fundamentals of VR and to gain practical experience. Because VR tricks our brains by presenting synthetic stimuli to our senses, it is extremely challenging to develop and analyze VR systems that are both effective and comfortable. To get a handle on these issues, this course will fuse together knowledge from a variety of relevant topics, including computer graphics, tracking systems, and perceptual psychology. Some basic questions that motivate the course topics:
- How does one build a good VR experience?
- How do VR systems work using current technology?
- What is wrong with current systems?
- How does the human body respond to VR?
- What fundamentals could help you to shape the future?
Topics covered include:
- Overview and perspective on virtual reality
- Human sensation and perception
- Engineering VR systems
- Perceptual training
- Building good experiences
We recommend the following courses and skills:
- CS 225 - prior general programming experience
- Math 225 or Math 415 - basic linear algebra, especially 3D transforms
Lecture is held in 1320 DCL on Tu Th 9:30-10:45am
During 5 lectures during the semester we will work on a set of group problem-solving exercises. Each of these events is worth 1% extra credit towards your total course grade. This is an opportunity to earn up to 5% extra credit in total. Also, you will learn things, so you should definitely attend.
The dates of these lectures will not be necessarily be published in advance. As these events are extra credit, there will be no makeup opportunity in the event of a conflict or illness.
We expect to have 4 assignments over the course of the semester. In each of these, students will work in pairs to solve a specific implementation problem in the virtual reality lab in 4107 Siebel Center.
See the Assignments page for more details.
The final project is a semester-long implementation of a VR or AR application. Students choose the topic and theme of the project under TA supervision.
This satisfies the team project requirement for CS majors.
See the project gallery for past student projects.
This class will have three midterm exams and no final exam. The second and thrid midterms will be online assignments and the details and dates will be announced on piazza
- Midterm 1: Feb 16 - Feb 18
- Midterm 2: April, date TBA
- Midterm 3: May, dateTBA
All exams are closed-everything (no book, notes, calculator, etc.). See the CBTF policies for more detail.You are responsible for all material covered in lectures and assignments.For DRES accommodations see CBTF DRES Students
We will post grades on Compass 2g.
We weight grades as follows:
|3 credits||4 credits|
|Midterm Exam 1||12%||12%|
|Midterm Exam 2||12%||12%|
|Midterm Exam 3||12%||12%|
|4th Credit Project||10%|
The cutoffs will be:
A+ >= 98%
A >= 90%
A- >= 87%
B+ >= 84%
B >= 81%
B- >= 78%
C+ >= 75%
C >= 65%
C- >= 60%
D >= 50%
F < 50%
Main text, required: Steven M. LaValle, Virtual Reality, 2016.
Optional: George Mather, Foundations of Sensation and Perception: Psychology Press; 2 edition, 2009.
Optional: Peter Shirley, Michael Ashikhmin, and Steve Marschner, Fundamentals of Computer Graphics, A K Peters/CRC Press; 3 edition, 2009.
See the Extra Material page for other, recommended readings.
We will use Piazza for answering questions and administering the course.
Click the header to join/view the forum. You do not need a passcode. If you want to use a non-
illinois.edu email address on Piazza, then send an email from your
illinois.edu mail account to the course instructor with the email address you want to use, and we will add you manually.
See the schedule for office hours.
- Professor Eric Shaffer, Siebel 2209
- Professor Dan Cermak, Siebel 4107