About the Course:
This course presents an introduction to virtual and augmented reality technologies, with an emphasis on designing and developing interactive virtual and augmented reality experiences using blender and Unity3D.
Course Objectives:
Impart fundamentals of graphical display pipeline system and programming using openGL
Introduce the use of geometric transformations on graphics objects and their application in composite form and its implementation.
Introduce Augmented and virtual reality concepts, models and techniques.
Building a basic application using blender and unity 3D and deploying.
Course Outcomes:
At the end of this course, the student will be able to:
Demonstrate the fundamentals of graphical display pipeline system and programming using openGL.
Use OpenGL for complex 3D graphical visualization and demonstrate its applications.
Apply techniques and methods of augmenting virtual objects in real space.
Apply techniques and tools to design an immersive virtual reality experience.
Use Unity3D to develop complex graphical applications including 3D interactive games.
Apply graphics in greater depth to more complex courses like Image Processing, Virtual and Augmented Reality, etc...
Course Content:
Unit 1:
Graphical System and Programming - 12 Hours
The Programmer’s Interface, Graphics Architectures, Programmable Pipelines. Graphics Programming: Programming Two Dimensional Applications. The OpenGL: The OpenGL API, Primitives and Attributes, Colour, Viewing, Control Functions, Polygons, Viewing, Control Functions, the gasket Program, Polygon and Recursion, The Three-dimensional gasket, adding interaction, adding menus.
Unit 2:
Geometric Objects and Transformations - 12 Hours
Scalars, Points and Vectors, Three-Dimensional Primitives, Coordinate Systems and Frames, Modelling a Coloured Cube, Overview of 2D Transformations: Rotation, Translation and Scaling, Affine transformations, Transformation in Homogeneous Coordinates, Concatenation of Transformations, OpenGL Transformation Matrices, Interfaces to Three Dimensional Applications, Quaternion’s.
Unit 3:
Introductiont to Augmented Reality - 12 Hours
Introduction to Augmented Reality: Definition and Scope, A Brief History, Examples, Requirements and Characteristics: Methods of Augmentation, Spatial Display Models, Visual Display, Stationary Tracking Systems, Mobile Sensors. Computer Vision and Augmented Reality; marker tracking, Multiple-Camera Infrared Tracking, Natural Feature Tracking by Detection, Incremental Tracking, Simultaneous Localization and Mapping, Outdoor Tracking, Interaction: Output and input modalities, Haptic interaction and Multimodal interaction.
Unit 4:
Introduction to Virtual Reality - 10 Hours
Introduction: What is Virtual Reality, Modern VR Experience. Bird’s Eye View: hardware, Software. Physiology of human vision: Eye movement and its implications or VR. Tracking: 2D and 3D orientation, Tracking Position and Orientation, Tracking Attached bodies, 3D Scanning of environments. Interaction: Locomotion, Manipulation, Social Interaction, Additional Interaction Mechanisms. Audio: Physiology of human hearing, Auditory Perception.
Unit 5:
Visually Realistic 3D Graphics using Blender and Unity3D - 10 Hours
introduction and Installation, using 3D View, controlling lamps, lights, Animating Objects, Modelling with vertices, edges and faces, building a simple boat, modelling organic forms like sea, and terrain, working with camera, Rendering and Compositing Introduction to Unity, Game Objects, Models, Materials and Textures, Terrains, Environments, Lights and Camera, Game1: Amazing Racer, Scripting I, Scripting II, Collision
Textbooks:
Steven M. LaValle. Virtual Reality. Cambridge University Press, 2017, http://vr.cs.uiuc.edu/ (Links to an external site.) (Available online for free)
D. Schmalstieg and T. Höllerer. Augmented Reality: Principles and Practice. Addison-Wesley, Boston, 2016, ISBN-13 978-0-32-188357-5
Refrence Books:
Books OpenGL
1: “Interactive Computer Graphics - A top-down approach with shader-based OpenGL”, Edward Angel and Dave Shreiner, Pearson Education, Seventh edition, 2015.
“OpenGL Programming Guide”: Mason Woo, Jackie Neider, Tom Davis, Dave Shrenier: 3rd Edition, openGl version, Addision Wesley, 1999.
Blender and Unity3D
Blender 3D Basic, Gordon Fisher, PACKT Publishing, 2nd Edition
4: Unity Game Development in 24 Hours ,Geig, Mike. Sams Teach Yourself . Pearson Education, 2014
Tools & Languages:
C/ C++ Python using OpenGL
Note: For working with recent versions the course material for UNIT 5 can be substituted with appropriate web content.
Desirable Knowledge : UE19CS202- Data Structures and its Applications.