San José State University
Department of Computer Engineering
CMPE-297: Special Topics
Topic: Virtual Reality

Instructors

Robert Bruce and Nanci Solomon

Prerequisites

Instructor consent

Course Description

Special topics to augment regularly-scheduled graduate courses. May be taken up to three times in different topic areas. Special topic to be covered: Virtual Reality

Learning Outcomes

At the completion of the course, you should be able to:

  • Create a basic 3D virtual reality application in Unity.
  • Apply software engineering principles in project management and scope used in virtual reality application development.
  • Describe factors that influence and impact Human-Computer Interaction (HCI) in virtual reality.
  • Define somatosensory limitations in virtual reality.
  • Explain the impact of light and optics in virtual reality.
  • Describe the impact of shading in virtual reality.
  • Explain how linear transformations are used in virtual reality.
  • Describe hardware considerations in developing virtual reality.

Required Texts/Readings

Virtual Reality by Steven M. LaValle. This book is freely available for download at http://vr.cs.uiuc.edu/

Other Readings

Designing Virtual Worlds by Richard A. Bartle. ISBN 9780131018167.

Unity in Action by Joseph Hocking. ISBN 9781617292323.

Unity 5.x Cookbook by Matt Smith. ISBN 9781784391362.

Grading

This is a project-based course. The project is comprised of six assignments: Personal bio / introduction, project proposal, Virtual Reality application, program documentation, project demonstration (live), and post-project assessment. There will also be one midterm and one final exam.

Grading will be based on a total accumulation of 100 possible points, distributed as follows:

Assignment Points
Personal bio / introduction 2
Post-project assessment 8
Project proposal 10
Project documentation 10
Project demonstration 10
Virtual Reality application 30
Midterm exam 15
Final exam 15
TOTAL POINTS 100

† Graded as an individual

‡ Graded as a group (each member of the group gets same grade)


Grading Scale

Percent range Grade
97% to 100% inclusive A
94% to 96% inclusive A-
91% to 93% inclusive B+
88% to 90% inclusive B
85% to 87% inclusive B-
82% to 84% inclusive C+
79% to 81% inclusive C
76% to 78% inclusive C-
73% to 75% inclusive D+
70% to 72% inclusive D
67% to 69% inclusive D-
Below 67% F

Course Schedule

Week Topics, Readings, Assignments, Deadlines
1 Part 1: Introduction - Course goals and objectives
Part 2: Virtual Reality demonstrations in SJSU’s VR lab in ENGR-246.
Read chapter 1 ("Introduction") of LaVelle’s Virtual Reality.
2 Part 1: Virtual Worlds - From past to present
Part 2: Introduction to the Xulu system
Read chapter 1 ("Introduction") of Bartle’s Designing Virtual Worlds.
3 Part 1: Computer graphics in 2D and 3D.
Part 2: Introduction to Unity.
Read chapter 3 ("The Geometry of Virtual Worlds") of LaVelle’s Virtual Reality.
DUE: Personal bio / introduction.
4 Part 1: Virtual Reality Hardware
Part 2: Unity programming lecture
Read chapter 2 ("Bird's Eye View") of LaVelle’s Virtual Reality.
DUE: Form a development team (three or four people).
5 Part 1: Light and Color.
Part 2: Unity programming lecture.
Read chapter 4 ("Light and Optics") of LaVelle’s Virtual Reality.
6 Part 1: Human vision and perception
Part 2: Unity programming lecture
Read chapter 5 ("The Physiology of Human Vision") of LaVelle’s Virtual Reality.
DUE: Project proposal.
7 Part 1: Human vision - physiology and perception
Part 2: Unity programming lecture
Read chapter 6 ("Visual Perception") of LaVelle’s Virtual Reality.
8 MIDTERM EXAM
9 Part 1: Rendering in Virtual Reality.
Part 2: Unity programming lecture.
Read chapter 7 ("Visual Rendering") of LaVelle’s Virtual Reality.
10 Part 1: Physics in the Virtual Reality.
Part 2: Unity programming lecture.
Read chapter 8 ("Motion in Real and Virtual Worlds") of LaVelle’s Virtual Reality.
11 Part 1: Tracking motion in Virtual Reality.
Part 2: Unity programming lecture.
Read chapter 9 ("Tracking") of LaVelle’s Virtual Reality.
12 Part 1: Virtual Reality - Design considerations.
Part 2: Unity programming lecture.
Read chapter 4 ("World Design") and chapter 6 ("It’s Not a Game, It’s a ...") of Bartle’s Designing Virtual Worlds.
13 Part 1: Human-Computer Interaction (HCI).
Part 2: Unity programming lecture
Read chapter 12 ("Evaluating VR Systems and Experiences") of LaVelle’s Virtual Reality.
14 Part 1: The future of Virtual Reality - stimulating the somatosensory system
Part 2: Unity programing lecture
Read chapter 13 ("Frontiers") of LaVelle’s Virtual Reality.
15 VR Application Demonstration
DUE: Project documentation
DUE: Post-project assessment
DUE: Virtual Reality application