ITCS 6125/8125 Virtual and Augmented Reality (Spring 2020)

Time: MWF 1:25-2:15 pm

Examples created by UNCC students

Instructor: Prof. Zachary Wartell



This course covers the state of the art in the design and implementation of Virtual Reality, Augment Reality, and Mixed Reality. Topics covered include: head-tracked and head-mounted displays, stereoscopic display, 6DOF tracking, 3D user interface design, applications of VR, evaluation of VR and other topics.

The Canvas Course is fully accessible to any UNCC student at

  • Data Structures (ITCS 2214 or equivalent)
  • Linear Algebra (MATH 2164 or equivalent )
  • Good programming skills
  • It is strongly recommended that students have completed a graduate or undergraduate course in computer graphics (at the OpenGL or WebGL level) or have taken a course with extensive programming experience in a 3D object-oriented graphics API such as Unity, OpenSceneGraph, etc. UNCC equivalent courses are:
    • ITCS 3120
    • ITCS 8120/6120
    • ITCS 5232/4232 (and implicitly ITCS 5231/4231)

Note, the specific programming language requirements are subject to change and will be posted prior to each semester this course is offered (see Programming References ). If you have further questions email Prof. Zachary Wartell.


Undergraduates interested in this course should contact Prof. Wartell for creating an ITCS 4990 Undergraduate Research section in order to attend the course during its regular meeting times. Further Dr. Aidong Lu and I are in the process of creating an pair of undergraduate courses in VR/AR, hopefully they will be available Fall 2020 or Spring 2121.

Virtual and augmented Reality Facilities

The following are available to students for their projects:



  • [Laviola2017] 3D User Interfaces: Theory and Practice (2nd Edition). Joseph J. LaViola Jr.,‎ Ernst Kruijff,‎ Ryan P. McMahan,‎ Doug Bowman ,‎ Ivan P. Poupyrev. English ISBN-10: 0201758679 ISBN-13: 978-0134034324. [Amazon]


  • Midterm Exam – 25%

  • Final Exam – 25%

  • Projects – 50% (more)


Complete details are accessible to UNCC students on Canvas at

Below is a summary of topics.

  • Introduction to Virtual and Augmented Reality
  • Brief History of VR and AR
  • ​Eye and Displays (2D)
  • Depth Perception and 3D Displays
  • Scene Graphs
  • 3D Transforms (Review)
  • 2D and 3D Tracking
  • Selection and Manipulation Technique
  • Travel Techniques and Wayfinding
  • Evaluation Methods (Human Factors Studies)
  • Presence
  • Selected readings from IEEE VR Conference


Prior exams will be made available within Canvas.

Project Assignments

  • Tutorial 1: Git_Tutorial_and_Coding_Standards
  • Tutorial 2: MSVS_CSharp_Tutorial
  • Tutorial 3: Unity_XR_Tutorial
  • Semester Project:

    Note due to COVID19 in Spring 2020 an alterate set of projects had to developed]

    Students propose their own projects using the available VR facilities (or build something!) that are then approved by the professor.

    • Two presentations – 10% – one presentation to present your proposed project and one final presentation on your final results (5% each)
    • Final Report – 10% – discusses your project and results
    • Virtual Environment Application Software – 80%

      Your application software will have multiple deliverables, including an initial “getting started” project.
      Depending on the scope of the project, students may do them individually or in groups of two.

      The recommended API’s are generally C++ (more). If a student is familiar with other API’s and the API supports interactive 3D graphics and the API supports virtual reality display systems and input devices, I will consider allowing students to use them.

Programming Tools & References