Build your own VR system: an introduction to VR displays and cameras for hobbyists and educators

Wearable computing is widely anticipated to be the next computing platform for consumer electronics and beyond. In many wearable computing applications, most notably virtual and augmented reality (VR/AR), the primary interface between a wearable computer and a user is a near-eye display. A near-eye display in turn is only a small part of a much more complex system that delivers these emerging VR/AR experiences. Other key components of VR/AR systems include low-latency tracking of the user's head position and orientation, magnifying optics, sound synthesis, and also content creation. In can be challenging to understand all of these technologies in detail as only limited and fragmented educational material on the technical aspects of VR/AR exist today. The proposed SIGGRAPH course serves as a comprehensive introduction to VR/AR technology to conference attendees. It is based on a quarter-long class taught to undergraduate and graduate students at Stanford. The Stanford class (EE 267: Virtual Reality) is a lab-based maker-focused experience that teaches students how to build a head-mounted display (HMD) from scratch in 10 weeks. Every week, a different component is taught and implemented, including the graphics pipeline, stereo rendering, lens distortion with fragment shaders, head orientation tracking with inertial measurement units, positional tracking, spatial sound, and cinematic VR content creation. At the end, the students will have built a VR display from scratch and implemented every part of it. We intend to bring this experience to SIGGRAPH and teach conference attendees the same in a 3.25 h course. All hardware components are low-cost and off-the-shelf; the list will be shared with attendees. For maximum accessibility, all software is implemented in WebGL and using the Arduino platform. Source code will be provided to conference attendees. At the end of the SIGGRAPH course, attendees will leave with a detailed understanding of VR displays and cameras and they will be able to implement these systems themselves, using the provided instructions and code. We hope to reach VR enthusiasts who would like to learn more about the underlying technology of current-generation VR/AR systems and also educators. Wearable computing is a exciting new area not only for SIGGRAPH attendees but also for students at universities, colleges, and other institutions. The authors came up with one way of teaching VR in a hands-on manner to university students and have received overwhelming interest from Stanford students. We would like to share that experience with other educators and hope to inspire some of the attendees to teach VR at their home institution. The authors have published more than 60 scientific publications on topics related to computational cameras and displays and taught more than 5 courses at SIGGRAPH and other conferences on visual computing (Eurographics, CVPR, ...). More importantly, the authors have developed a full university course on this topic that was taught to undergraduate and graduate students in the Spring of 2016 and will be taught again in the Spring of 2017. Feedback from the students was very positive throughout.