CS 475 – COMPUTER GRAPHICS

Note:

  1. Please make sure you are allowed to tag this course as a specialization elective. The department might change its policy in which case you will have to tag it as an insti-elective. However, in case there aren’t enough good courses running in the dept. the HOD/FacAd might make an exception and allow you, which is how I took it as a Specialization Elective.
  2. Make sure you are enthu about the engineering aspect of Graphics and not the artistic aspect

Professor when I took the course:

Prof. Parag Chaudhari in the year 2013-2014

Motivation behind the course:

Computer Games and Animation is cool. And its getting better all the time. We went from gaming consoles like Contra on the Casette to Nitendo Wii. What exactly goes on when you shoot a bullet from your Maverick in Counter Strike? And we have seen how Animation movies have evolved since our childhood, from Scooby Doo to Adventures of Tin-Tin in 3D. How do they manage to get detail animations of water when showing waterfalls like in https://www.youtube.com/watch?v=_4kNVxNYaM4

You actually get to do animation the hard way.

Prerequisites:

Skills: C++ coding. Enthusiasm. A webpage for hosting your codes (preferably home.iitb.ac.in or something similar)

Course Content: The hardware part of graphics is given minimalistic treatment. Towards the end of the course there are a few lectures on the graphics hardware and how it has evolved and the state of the art. Hardware architecture is not discussed. OpenGL library is used extensively throughout the course.

Introduction: What is Computer Graphics? Geometric Manipulation: Transformations, Matrices, Homogeneous Coordinates.Elementary 3D Graphics: Plane projections, Vanishing points, Specification of a 3D view. Visibility: Image and object precision, z-buffer algorithms, area based algorithms.Basic Raster Graphics: Scan conversion, filling, and clipping.Rendering: Lighting, Radiosity, Raytracing

Feedback on lectures: Before I say anything else. Let me say that Parag Chaudhari is one of the coolest profs in IIT. Not just because of his field, but also his attitude towards teaching and learning. I myself got a CC(6) in the course, but I would totally recommend someone enthu for coding and Graphics to do this course. The instructor is really interested in interactive learning. Attending lectures is a must if you want to take away something at the end of the course. Lectures are filled with fun discussions and he shows short animations by Pixar etc as reference to explain certain concepts. Feedback on assignments and exams: There are 3 assignments in the course. All of them require a group of 2. You cannot do them alone unless you are an ace coder who participates in the coding competitions. That said, each assignment takes roughly 20 man-hrs each. Enough time is given. No late submissions accepted. You learn a lot from the assignments. Assignment 1 last year involved us making a software similar to paint. Assignments 2 and 3 together had us create a 2 min animation movie using just C++ and OpenGL Exams are fun too. We had a question about the Penrose Paradox from INCEPTION https://www.youtube.com/watch?v=8m_BApSNas8

Difficulty level: This is a difficult course. You need to be motivated enough. Make sure you have a look at the instructors page. It has a lot of nice and interesting articles http://www.cse.iitb.ac.in/~paragc/teaching/2013/cs475/ He updates it quite regularly. In fact for 2014 I am sure he will have a separate page.

The prof puts in a lot of effort in conducting the course. So the student also has to put in the same amount of effort.

Study Material and References:

http://www.cse.iitb.ac.in/~paragc/teaching/2013/cs475/ A similar link for 2014 course whould be up by the time the course starts.

Grading Stats: Total 40 AA1 AB6 BB8 BC8 CC3 CD2 DD2 FR10 Total40

Review written by Parthe Pandit.