Special Topics: Programming for Mobile VR
Virtual Reality hardware is evolving rapidly, but you can learn the basic principles and patterns of VR development using your smart phone and a cheap Google Cardboard viewer. This class will teach how to develop Google Cardboard VR applications using the Unity game engine. The course will include an overview of the past, present, and future of VR technology, and discuss some of the key HCI principles for developing VR. Students will learn the C# programming patterns and techniques to implement gaze-based interfaces, enable interactions with objects in the 3d environment, and to use Photon networking to build multi-player VR experiences. The coursework will include a series of projects culminating in a group project building a simple multi-user VR game.
Computer Systems Organization (CSCI-UA 201) and Java, C++, C# or other object oriented language.
Students will need to bring the following to class: a smartphone, laptop, and a Google Cardboard viewer (available for $7 and up.) See the Materials and Software page for more details.
- What is VR and why it works; 3dof vs. 6dof
- Unity Game Engine: principles, project structure, physics
- Unity C# programming (including object lifecycle, scripting object behaviors, event listeners, the update loop, coroutines)
- Google Cardboard projects and deploying to mobile devices
- 3d UI and interaction design considerations for VR
- Implementing gaze and click interactions with raycasting
- Optimizing for frame rate; avoiding VR-sickness
- Multi-user VR with Unity networking, networked objects, remote procedure calls
- Course Number: CSCI-UA.0480
- Section: 001
- Semester: Summer 2018
- Instructor: David Gochfeld
- Meeting Time: Tuesday and Thursday, 5:45pm - 7:50pm
- Room: 60 Fifth Ave C15
- Email: gochfeld at cs dot nyu dot edu
- Office Hours: Thursday, 4:30 - 5:30pm
- Office Hours Room: 60 Fifth Ave C15
- Tutor: Siyuan Qiu
- Tutor email: siyuan dot qiu at nyu dot edu
- Tutoring hours: 6:30pm - 8:30pm Mondays and Wednesdays. Available at other times by appointment.
- Location: 60 Fifth Ave C15