From Immersive Visualization Lab Wiki
Jump to: navigation, search


CSE190: 3D User Interaction


This course focuses on the design and evaluation of three-dimensional (3D) user interfaces, devices, and interaction techniques. The course consists primarily of lectures and hands-on programming. Students will be expected to implement several 3D interaction techniques as part of this course. This course is intended to lay the foundation for 3D user interaction as it can be applied to novel user interfaces for computer games and consumer electronics, as well as virtual and augmented reality applications. An important aspect of the course are going to be programming assignments involving 3D interaction devices, which are going to be provided to the students in the computer lab. These devices will include the Microsoft Kinect, which allows gesture control, and the Razer Hydra, which allows high-precision 3D interactions. We will use the C++ programming language and the OpenSceneGraph programming API, which builds on OpenGL.

Kinect-for-windows.jpg Hydra.jpg
Microsoft Kinect Razer Hydra
The StarCAVE at Calit2

Course Schedule

Click here for the course schedule.

It lists lectures, homework due dates, recommended reading, paper presentations, and the final exam.


  • 2013-03-17: The final exam will happen in Center Hall room 220
  • 2013-03-11: Sid's remaining office hours will be held in CSE lab 260
  • 2013-03-10: Added section on Final Exam to this web page
  • 2013-02-24: Homework assignment 4 is now on-line
  • 2013-02-10: Homework assignment 3 is now on-line
  • 2013-02-01: OpenSceneGraph binaries are now installed on Sequoiah lab 142 computers (except PC #26)
  • 2013-02-01: Microsoft webcam drivers are now installed on Sequoiah lab 142 computers (except PC #26)
  • 2013-01-29: There is a new wiki page on the Paper Presentations
  • 2013-01-27: Homework assignment 2 is now on-line
  • 2013-01-24: Homework grading for assignment 1 will happen in Sequoyah lab 142 tomorrow, Friday, starting at 12:30pm. The homework is due at 1pm so everyone should be there by that time.
  • 2013-01-24: Sid Vijay is now officially the TA for this course. Welcome!
  • 2013-01-21: The z-fighting problem with the 3D models for the first homework assignment has been resolved. Just use the newly uploaded .zip files instead of the old ones.
  • 2013-01-16: OpenSceneGraph build instructions now on this web site, scroll down to Resources
  • 2013-01-13: Homework assignment 1 is now on-line


  • Introduction to 3D interaction
  • Application domains
  • Output hardware
  • Input hardware
  • Selection and Manipulation
  • Navigation (Travel and Wayfinding)
  • System Control
  • Symbolic Input
  • 3D user interface design
  • Evaluation of 3D User Interfaces
  • Augmented Reality Interfaces


  • CSE167 (Introduction to Computer Graphics) or equivalent
  • Experience programming in C++
  • Experience with OpenGL graphics programming


  • Instructor: Jürgen Schulze
  • Instructor's office hour: Mondays 2-3pm, Atkinson Hall, room 2125
  • Number of Units: 4
  • Lectures: Monday and Wednesday, 11:00am-12:20pm in EBU-3B, room 2154
  • First lecture: Monday, January 7th, 2013 ***Update: cancelled; first lecture on Wednesday, January 9th***
  • Last lecture: Wednesday, March 13th, 2013
  • Homework: programming assignments
  • Paper presentation
  • Designated computer lab for this course: Sequoiah Hall room 142
  • TA: Sid Vijay, office hours in lab Sequoiah Hall 142: Tue/Thu 11am-1:30pm ***during last week of instruction Sid's office hours will be in CSE lab 260***


Assignment 1 (group) 15%
Assignment 2 (group) 15%
Assignment 3 (group) 15%
Assignment 4 (group) 15%
Paper Presentation (individual) 15%
Final Exam (individual) 25%

You will find your scores on Ted. Please verify after every due date that your score has been recorded correctly.

If your weighted average score across all assignments is 100 points or more, you will get a grade of A+.

Final Exam

The final exam is scheduled for Tuesday, March 19th, from 11:30am-2:30pm in Center Hall room 220. The exam will be closed book.

The best way to prepare for the exam is to review all course slides, they are available as PDF files on the course schedule. In addition, it is recommended to review the relevant chapters in the textbook, as noted on the course schedule. However, the exam questions will only be on material covered in class. There may be more creative questions about 3D user interface design, which will require applying the skills learned in class to a given user interface design task.

During the exam, you will need to write the answers on the provided exam sheets. Every student needs to bring their own pen/pencil. Ruler, eraser, ink corrector, pencil sharpener, etc. are also permitted. Cell phones must be turned off. No calculators, tablets, laptops, or other electronic devices, and no books, lecture notes, cheat sheets, etc are allowed. You can write on the exam sheets and use your own sheets of paper if you need more space. The instructor will provide additional sheets and scratch paper as needed. At the end of the exam you will need to hand in the exam sheets along with any extra sheets you want to get graded on.


3dui-textbook-200p.jpg Bowman, Kruijff, LaViola, Poupyrev
3D User Interfaces: Theory and Practice
Addison Wesley Longman Publishing Co., Inc. Redwood City, CA, USA 2004
ISBN: 0201758679

Homework Assignments

All homework assignments are due at 1pm on the due date and have to be demonstrated to the instructor or TA/tutor in lab SEQ 142.