


Screenshots of class submissions for MAE 574/410 from Spring 2007
(top left: Still life by Quishi Fu and Hao Su, top right: Still life by Ankur Baheti and Amrish Kumar, bottom left: Balls on terrain by Sai Ailaboni and John Kocherry and bottom right: Balls on terrain by Steve Korzelius)
Introduction
This is an introductory course to familiarize students with Virtual Reality (VR) and its application for solving problems in medicine and engineering. To develop effective VR applications it is necessary to provide a sense of immersion and provide sensory stimuli to key senses of vision, touch, hearing and proprioception. The course will teach core and basic concepts in VR, with specific concentration on visual input. The course will teach fundamentals of visual perception, provide information and tools to develop 3D and immersive graphical systems.
Syllabus
OpenGL and graphics: Introduction, GLUT, geometric primitives, state management, matrix operations in OGL, transformation matrices, viewing matrices, camera positioning, projections, color, lighting, materials, math for geometry, display lists and vertex arrays, parametric modeling, blending/antialiasing/polygon offset, texturing, multitexturing, fog, GLSL, GLARB, stereography, NURBS and splines, GL evaluators, scene graph based graphics
Input devices: Broad introduction, specific focus and demonstration of extraction of data from various EM trackers (bird and aurora system), calibration of sensors, camera based tracking and intro to AR toolkit
Display systems: Broad introduction, specific focus on HMD’s, projector based systems, multi-projector systems, chromium/etc., stereo implementation, calculations for projector systems.
Computational geometry: Introduction, basic 2D algorithms (quick hull, finding centroids etc.), Delaunay triangulation, terrain generation, how to manage point cloud data, research papers
Collision detection: Introduction and math, ray – point intersection, sphere based collision detection, bounding box based collision detection, hierarchy of systems.
Physics: Rigid body dynamics, Particle physics, Introduction to physics engines
Additional topics: Simulation and modeling methods
Grading
Homework: 30% Mini projects(2): 25% Final project: 25% Mid term exam: 15% and Instructor discretion (class participation): 5%
Honor Policy
The motivation of the course is to make you, the student, to learn. As the instructor it is my duty to foster an environment that promotes learning. Learning doesn't necessarily have to come from the instructor, but can be done through your classmates too. I encourage collaboration in class, but not copying. Feel free to collaborate with classmates and discuss ideas freely. But please be sure to acknowledge (and reference) the person you have collaborated with. This would allow me to give your classmate due credit. While students interacting and discussing with others in the class is encouraged, plagiarism or copying of code either from within the class or from the web is discouraged. It is expected of the students to provide acknowledgement to any external code used. This policy is self enforced, you after all, are the best person to make sure you do the right thing.
Instructor: Govindarajan Srimathveeravalli