Select Page

CS 5678

3D User Interfaces


This course explores the field of 3D User Interfaces (3DUIs) and interaction design for virtual and augmented reality applications, including theoretical foundations, design principles, and best practices for high-fidelity prototyping. Students will be tasked with designing, implementing, and evaluating their own interaction techniques for 3DUI tasks such as selection and manipulation, travel, and system control for head-mounted displays. Additional topics covered may include but not limited to: remote collaboration, input devices, and more.

Instructor: Harald Haraldsson

Note: Prior to Spring 2024 the course title was “Topics in Mixed Reality”

Student activities include:

  • Homework: Individual programming assignments
  • Project: Designing, developing, and evaluating a 3D interaction technique
  • Quizzes: In-class quizzes from lectures and readings
  • Participation: In-class activities, attendance etc.


Students must have

Or have

  • Prior Unity / C# development experience
  • Understanding of linear algebra and 3D geometry


Required textbooks:

  • Joseph LaViola Jr. et al. 3D user interfaces: theory and practice. Second edition. Addison-Wesley Professional, 2017. Amazon.
  • Steven M. LaValle. Virtual Reality. Cambridge University Press, 2017, (PDF and HTML available online)

Other readings, such as research papers, will be assigned throughout the semester.


Enrolled students should sign into Cornell Canvas once the semester starts for access to course workspace with syllabus, schedule, assignments, grades, and announcements.