Schedule and Syllabus

Unless otherwise specified the course lectures and meeting times are Mondays and Wednesday from 3:00pm to 4:20pm in the Building 200-034.

Students with Documented Disabilities: Students who may need an academic accommodation based on the impact of a disability must initiate the request with the Office of Accessible Education (OAE). Professional staff will evaluate the request with required documentation, recommend reasonable accommodations, and prepare an Accommodation Letter for faculty. Unless the student has a temporary disability, Accommodation letters are issued for the entire academic year. Students should contact the OAE as soon as possible since timely notice is needed to coordinate accommodations. The OAE is located at 563 Salvatierra Walk (phone: 723-1066, URL: https://oae.stanford.edu/).

This is the syllabus for the Spring 2019 iteration of the course.
Event Type Date Description Course Materials Readings
Lecture 1 Monday
April 1
Introduction to VR and AR
Course overview and logistics
Histroy of VR and AR
[slide]
Lecture 2 Wednesday
April 3
The Graphics Pipeline and OpenGL I: Overview and Transformations
Rotation, translation, scaling, modelview matrix, projection matrix
[slides] Course Notes on Transformations

Marschner
Chap. 6 & 7
Lab 1 Friday
April 5
Hello, WebGL!
Homework #1 Release
[lab]
[video]
[homework | solution]
Lecture 3 Monday
April 8
The Graphics Pipeline and OpenGL II: Lighting and Shading [slides] Marschner
Chap. 10 & 11
Lecture 4 Wednesday
April 10
The Graphics Pipeline and OpenGL III: OpenGL Shading Language (GLSL)
GLSL vertex and fragment shaders
[slides]
Thursday
April 11
Homework #1 due at 11:59pm
Lab 2 Friday
April 12
Lighting and Shading with GLSL
Homework #2 Release
[lab]
[video]
[homework | solution]
Lecture 5 Monday
April 15
Human visual system
Perception of depth, color, contrast, resolution
[slides] LaValle
Chap. 5 & 6
Lecture 6 Wednesday
April 17
The Graphics Pipeline and OpenGL IV: Stereo Rendering [slides]
Thursday
April 18
Homework #2 due at 11:59pm
Lab 3 Friday
April 19
Stereo Rendering, Depth of Field and Anaglygh
Homework #3 Release
[lab]
[video]
[homework | solution]
Lecture 7 Monday
April 22
Head Mounted Display Optics I
Magnifier designs
Stereo rendering for HMDs
Lens distortion correction
[slides]
Lecture 8 Wednesday
April 24
Head Mounted Display Optics II
Advanced HMD optics
[slides] Field of View in AR HMDs
Thursday
April 25
Homework #3 due at 11:59pm
Lab 4 Friday
April 26
Build Your Own HMD
Homework #4 Release
[lab]
[video]
[homework | solution]
Lecture 9 Monday
April 29
Interial Measurement Units I
Gyrometers
Accelerometers
Magnetometers
[slides] Course Notes on IMUs

LaValle
Chap. 9.1 & 9.2
Lecture 10 Wednesday
May 1
Interial Measurement Units II
Sensor fusion
Complementary filter
Arduino
[slides]
Thursday
May 2
Homework #4 due at 11:59pm
Lab 5 Friday
May 3
Orientation Tracking with IMUs
Arduino Programming

Homework #5 Release
[lab]
[video]
[homework | solution]
Friday
May 3
Project Proposal due (email it to course staff list) at 11:59pm
Lecture 11 Monday
May 6
Pose Tracking I
Tracking with light house
[slides] Course Notes on Tracking
Lecture 12 Wednesday
May 8
Pose Tracking II
Advanced positional tracking
[slides]
Thursday
May 9
Homework #5 due at 11:59pm
Lab 6 Friday
May 10
Pose Tracking
Homework #6 Release
[lab]
[video]
[homework | solution]
Lecture 13 Monday
May 13
Panoramic Imaging and Cinematic VR [slides]
Lecture 14 Wednesday
May 15
Spatial Sound and the Vestibular System [slides]
Thursday
May 16
Homework #6 due at 11:59pm
Lecture 15 Monday
May 20
In-class midterm
Lecture 16 Wednesday
May 22
VR Engines and Other Aspects of VR
Latency, eye tracking, post-rendering warp, ...
[slides] LaValle
Chap. 11
Lab (optional) Friday
May 24
Work with TAs on Projects
Monday
May 27
Memorial Day
NO CLASS
Lecture 17 Wednesday
May 29
Guest lecture: Dr. Martin Banks, Professor of Optometry, Psychology, and Bioengineering, UC Berkeley
Lab (optional) Friday
May 31
Work with TAs on Projects
Lecture 18 Monday
June 3
Guest lecture: Dr. Bernard Kress, Principle Optical Architect, Microsoft Hololens
Wednesday
June 5
Final Project Demo Session
Reports and code due on 6/7/2019, 11:59pm Report template