COL781: Computer Graphics

II Semester 2024-25

Course Description

This course provides a broad introduction to the fundamentals of computer graphics. It will start from the key theoretical and mathematical foundations and build up to practical implementation of complete graphics programs, with a focus on both real-time 3D rendering and high-quality offline graphics. A range of topics in the main areas of modeling, rendering, and animation will be covered.

Content: Foundations: rasterization, transformations in 2D and 3D, homogeneous coordinates, perspective projection, visibility, texture mapping. Modelling: polygon meshes, Bezier curves and surfaces, subdivision surfaces, mesh processing, geometric queries. Rendering: radiometry, shading models, the rendering equation, path tracing. Animation: skeletal animation, skinning, mass-spring systems, time integration, physics-based animation.

Textbooks: There is no required textbook, but it is recommended to refer to one or both of the following as supplementary reading:

Prerequisites: COL106 or equivalent. Familiarity with C++ programming and basic linear algebra is assumed.

Announcements: All announcements will be made on Piazza. It is the student’s responsibility to keep up to date with it.

Lectures

Slides will be posted here as the semester proceeds.

Tuesday Friday
1-3 Jan 1. Introduction
6-10 Jan 2. Rasterization and sampling 3. Linear and affine transformations
13-17 Jan 4. Perspective projection 5. Visibility and shading
20-24 Jan 6. The rasterization pipeline 7. Texture mapping
27-31 Jan 8. Ray tracing 9. Introduction to modeling
3-7 Feb 10. Polygon meshes 11. Smooth curves and surfaces
10-14 Feb 12. Subdivision, geometric queries 13. Spatial data structures
17-21 Feb 14. Modeling wrap-up
24-28 Feb 15. Introduction to rendering
3-7 Mar 16. Material appearance
17-21 Mar 17. The rendering equation 18. Path tracing
24-28 Mar 19. Other rendering algorithms 20. Real-time rendering
31 Mar–4 Apr 21. Introduction to animation 22. Skeletal animation
7-11 Apr 23. Skinning, particle dynamics 24. Mass-spring systems
14-18 Apr 25. Constraints and collisions
21-25 Apr 26. Beyond particles and springs 27. Continuum models
28. Conclusion

Assignments

All dates of future assignments are tentative and subject to change.

  1. Software rasterization (21 Jan – 7 Feb)
  2. Mesh processing (11 Feb – 18 Mar)
  3. Path tracing (8 Mar – 4 Apr)
  4. Keyframing and simulation (4 Apr – 25 27 Apr)

Policies

Evaluation:

The above grading breakdown is tentative and subject to change.

Grading: Following institute policy, a minimum of 80% marks are required for an A grade, and minimum 30% marks for D. These cutoffs may be raised based on the discretion of the instructor.

Late policy: Homework assignments are due at 11:59pm on the due date. You are allowed a total of 4 late days across all the assignments. After the total allowed late days have been used up, a 25% penalty will be applied for each extra day a submission is late.

Audit policy: To earn an audit pass, you must score at least 40% in the course total, and at least 20% in each assignment and each exam.

Attendance policy: Attendance lower than 75% may result in a one-grade penalty (e.g. A to A–, or A– to B).

Academic dishonesty: Adapted from SAK’s general guidelines for students:

Remember that you have signed an honour code before getting admitted to IIT Delhi. Check that out on the inside cover page of your prospectus. Here is a non-exhaustive list of dishonest behaviour in assignments, based on past experience.

Please note the following points in addition.