Course Objective:
The objective of this course is to introduce students to Computer Graphics (CG), an interdisciplinary area focused on rendering realistic images/videos of a virtual world. This course covers basic mathematical and computational techniques of computer graphics that are widely applicable in various areas, including visual effects and animation in games and movies, virtual and augmented reality, novel view synthesis, and scientific visualization.
Course Contents
Basics of Computer Graphics: Introduction to the CG, Rasterization Basics and OpenGL API (4 lectures)
Components of Computer Graphics: Pinhole Camera and Clipping Model, Coordinate Systems - 2D Transformation, 3D Transformation (5 lectures) (Lab: 6 programming hours)
Image Generation Pipeline: Viewing Transformation, Modelling-Viewing Pipeline, Visibility & Occlusion (10 lectures)
Modelling & Rendering: Hierarchical Modelling, Rendering, and Texture Mapping (8 lectures) (Lab: 8 programming hours)
Curves and Surfaces: Cubic, Bezier & B-Splines curves, and Surfaces (9 lectures)
Advanced Topics: Animation, Optimization, and PDEs (6 lectures) (Lab: 10 programming hours)
Learning Outcomes
Upon successful completion of the course, students will:
-
learn the mathematical and computational techniques needed to generate images/video of a virtual world on a screen
-
gain knowledge to model 2D and 3D objects in a virtual world and lighting & texturing these objects
-
understand the numerical techniques to represent various curves and surfaces that are useful to represent object geometry, motion, and kinematics
-
learn the principles of basic key-frame animation. Later, in a more advanced course, we will learn how to generate more realistic animation with physics underpinning
Text Book
- Fundamentals of Computer Graphics (4/e), Peter Shirley and Steve Marschner, Taylor & Francis Group, ISBN-10: 9781138744813, ISBN-13: 978-1138744813
Reference Materials
-
Computer Graphics using OpenGL (3/e), F. S. Hill Jr. and S. M. Kelley, Pearson India, ISBN-10: 9332555303, ISBN-13: 978-9332555303
-
Physics-based Animation, Kenny Erleben, Jon Sporring, Knud Henriksen and Henrik Dohlman, Charles River Media (2005), ISBN-10: 1584503807, ISBN-13: 978-1584503804
-
Learn OpenGL Tutorials: https://learnopengl.com
-
The OpenGL Programming Guide: http://www.opengl-redbook.com/
-
Associated Libraries: OpenGL, GLUT, GLEW, GLFW, GLM
-
Open source materials on physics-based animation https://www.physicsbasedanimation.com/, https://phys-sim-book.github.io/
Past Offerings
Course Metadata
Item | Details |
---|---|
Course Title | Fundamentals of Computer Graphics |
Course Code | CS5024 |
Course Credits | 3-0-2-4 |
Course Category | PME |
Proposing Faculty | Avirup Mandal |
Approved on | Senate 11 of IIT Palakkad |
Course prerequisites | (CS2013 Systems Programming, CS2030 Data Structures & Algorithms, and MA1011 Linear Algebra & Series) Or (CS5107 Programming Lab) |
Course status | NEW |