-
What I will cover next:
- Next for tools: Narayanan, Mukesh,
- Thursday: B-splines, if we have time. Also we will try to do
course eval. Please try to be present.
|
- Latest marks.
|
- Recent Announcements
- Picture assignments: URL's have been updated. See below.
Incomplete: Nilesh, Naga, Hemendra, Mukesh. Jugal. Nue, Shameem.
- Tools assignment not done: praveen, manjunath, cabhina, mukeshc, jugal, narayanan, aneesh, shameem
|
- Topics covered so far.
Note that the notes have been transcribed by
some of your seniors and have errors! Please point them out to earn
class participation points.
- Intersection of line segments. See these notes.
- Convex hull. End of week 2.
- Modeling Transformation. See
these notes. Also check out the Rogers and Adams book on
Mathematical Elements for computer graphics.
- Transformations related to projection. See
these notes. Also check out the Rogers and Adams book on
Mathematical Elements for Computer Graphics.
- Clipping. Polygon Filling See
these notes. Also see Hearn and Baker for details on scan
conversion and polygon filling.
- z-buffer algorithm. Notes to be produced by Hemendra. Not done.
- Perspective normalization. Notes to be produced by Praveen. Not done to my satisfaction.
- Ray Tracing. Some faq here and here.
- Front To Back algorithm. Click
here.
- Polygon scan conversion algorithm alternative.
- Radiosity notes: I need a volunteer.
- Anti-aliased hemicube. See paper . Contains scan conversion algorithm also.
- Weathering See presentation, and
scientific american article (downloaded version doesn't have all the nice images.)
- Linear Octree Display. See this paper and these slides.
|
- Demos, samples.
- Documentation for povray
- Documentation for gl, for GLU, and for glut. Also see the home page of mukeshc for the red book. (make
sure you see the copyright page). Thanks, mukesh.
- Simplest OpenGL proram. Simple rectangle from the book.
On my machine, I use gcc hello.c -lGL -lglut -lGLU to
compile. On pro-*, Shameem used successfully
gcc -L/usr/X11/lib -L/usr/X11R6/lib -lX11 -lXext -lXmu -lXt -lXi
-lglut -lMesaGL -lMesaGLU -lm hello.c
- This program (for the truncated
cube) demonstrates geometrical manipulations. Click on all
mouse buttons to see the effects.
- Tips for running OpenGL with no source code changes on NT
(from Shilpa Ghadge).
- Visit
the GLUT Web site or
to download the GLUT 3.6 headers and pre-compiled libraries
- Copy the files in the respective areas
- In your project settings add the following library modules:
glut32.lib, opengl32.lib, glu32.lib
|
- Tasks.
Assignments are not optional. You MUST submit every assignment
(even if it is late) to be considered ineligible for a fail grade.
- Register with me via email your name by which you'd like to be called.
Due, Friday Aug 4 midnight.
- Geometry. Due, Thursday Aug 10. midnight. Write a
program (no graphics yet) that will report true if two (solid) triangles
intersect. Vertices of the triangles are (currently) to be taken from
standard input as three integers. The output is true or
false. Submission guidelines for Assignment no 1:
- Send a nicely formatted text (html) version of your algorithm via
email to sharat with the subject header cs685
- Send the source code alongwith the html version in one single
source file with the subject header cs685 to sharat
This counts towards programming assignments. Note: Adding graphics to this will
come later.
- Picture Assignment: Due every week :-). In this assignment, you
will bring a picture (either a physical one, or one on the net). The
picture that you bring must have "something interesting" (as voted by
the majority in the class) from our course point of view. Pornogrphic pictures, sadistic
pictures, and the like are STRICTLY excluded. Every week we will do one picture from one
student. You should be able to evoke a question from your audience
"How was this effect achieved?" This counts towards class
participation. Email me before Monday afternoon to be scheduled for
that week.
- First OGL program. Show the truncated cube (see elsewhere in this
file) in oblique (cabinet) view on a xwindow screen. All three edges of the triangle should be
fully visible. No rotation stuff, no animation. Simply a static
view. Due Aug 17 midnight.
- Tools. Due every week:-) Each of you should prepare a
talk on some tools aspect of Graphics. Not a research talk.
Example of topic: http://www.jausoft.com/gl4java.html. Talks should
be about 15 min in duration, must contain a short demo. Check with
me on your topic before you present. This counts towards class
participation. Email me before Monday afternoon to be scheduled for
that week.
- Perspective normalization. Written. Due Thursday. Derive the
matrix needed to transform a canonical perspective frustum
(defined by z = -1, z = z_min, y = z, y = -z, x = z , x = -z)
into the canonical parallelopiped used by OpenGL (defined by z =
1, z = -1, x = 1, x = -1, y = 1, y = -1). Make sure that you
show that it works.
- Viewport and OGL. Programming. Due Mon Sep 4 2000 Monday 8 AM.
Display the triangle assignment in four viewports. The first viewport
shows the triangle in 3D oblique view. The second viewport (viewed
to the right the way you read this line).
shows the two triangles as planar triangles (in some plane to be
determined.) The triangles are shown as if they
intersect (if they do), and not intersecting (if they
don't). Clearly the plane has to be determined dynamically.
The third viewport (below the first) shows the triangle projected on the x-y
plane. The fourth viewport is reserved for future use. For this
assignment, visual quality is important. Note: You may not
discuss this algorithm with any one. You can use the net
resources (such as this for
ensuring that the algorithm is correct.
- Course project
- First Stage. Please
submit a (A4-sized) one-page (back side OK) design document. The
document must contain information on what you plan to achieve, a
handdrawn or computer generated picture of your project,
schedule. I am going to be firm with the deadline, so please do
not ask for extension. Note: your grades for your project will
be determined by this design document irrespective of what you
churn out at the end. In other words, I will hold you responsible
to this document. Deadline: Oct 16. (Seehere for some ideas if you must).
- Second Stage. Due Oct 23. Please submit updated design document. Add more pages if necessary.
- Ray Tracing assignment. Use POV ray to produce pictures on
the theme: IIT Bombay. General guidelines are that you can
borrow any code (for example textures, geometry) but that there should be something new in your
page (greater than equal to 20%). Deadline: October 16. Ideas
for themes: The logo, text of IIT Bombay, Hostel, PAF, Sports,
TechFests, Powai Lake.
|
- Evaluation
(Note: CS475 is graded differently from CS685).
- Collaboration: By default, you may not discuss assignments
with friends (or anyone else for that matter); you are expected to implement your own solutions. On
the programming project, you are permitted (and encouraged) to
form teams of two people and partition your work among
the team members. Teams may discuss their project with other teams,
but may not share code. By reading these lines, you agree to these
terms :-)
- Attending the class is optional (except in unusual cases where I may
be forced to apply the XX grade yardstick). However, if
you attend the class, you must be well prepared. In particular, if
- You are found sleeping in the class, you will get Negative
marks.
- You get marks for "good" point you make in the class.
Everyone will be given an opportunity to make good points.
- You must earn good points, otherwise, you will be considered as
sleeping. In other words, you don't get points for attendance.
Is this policy clear? Remember, this course is an elective for you, so
if you don't like this, please consider some other course.
- Class participation: 5-10% (You can make or break a grade in this
category).
- Midsem: 10% (Week of Sept 18).
- Programming assignments: >=10%
- Course project: <= 20%
- Final exam: <= 50%
|
- Texts/References
- Computer Graphics: Principles and Practise, Second Edition. Foley,
van Dam, Feiner and Hugues. Addison Wesley. 1990.
- Advanced Animation and Rendering Techniques: Theory and Practise.
Alan Watt and Mark Watt. Addison Wesly. 1992.
- Computer Graphics. Hearn and Baker. Best value for money.
- Computer Graphics. Newman and Sproull (do not look at this unless
you have to).
- 3D Graphics Programming with OpenGL (available in the library).
|
- Old Announcements
- Sysadm Mamata has placed Mesa on all pro machines except pro-09,
pro-20 and pro-01. Has anyone tried out?
- You are EXPECTED to
check the web page once a week before the class hour on Monday (around
1 pm).
- Submissions will be done via a suitable web page. Do not send email. This
will start as soon as your TA has set it up, so until then we have to
resort to email.
- In general, if you have a question copy the email to the TA. Now
is a good time to set up a mail alias for this course.
- Programming will be in Java or OpenGl, Raytracing scripts. Maybe: Flash.
- Be prepared for the lectures with the topics already covered.
|
- Solutions.
- Triangle triangle intersection. C version
- Written Assignment on perspective normalization.
- Picture assignments.
- Anand: Picture and Comments
- Jalem: Picture and Comments
- Manjunath: Picture and Comments
- Abhinav: Pictureand Comments
- Ravikanth: Pictureand Comments
-
Vikram: Pictureand Comments
- Mukesh. Pictureand Comments
- Sunny: Picture and Comments
- Sundeep: Picture and Comments
- Susmit: Pictureand Comments
- Ameet: Pictureand Comments
- Sanket: Picture and Comments
- Akhilesh: Pictureand Comments
- Aneesh: Pictureand Comments
- Narayanan: Pictureand Comments
- Shameem: Pictureand Comments
- Tools assignment:
- Sunil. Choice: AB. Presentation: BC. Utility: BC
- Sunil. Choice: AB. Presentation: BC. Utility: BC
- Sunil. Choice: AB. Presentation: BC. Utility: BC
- Sunil. Choice: AB. Presentation: BC. Utility: BC
- Sunil. Choice: AB. Presentation: BC. Utility: BC
- Sunil. Choice: AB. Presentation: BC. Utility: BC
- Sunil. Choice: AB. Presentation: BC. Utility: BC
- Sundeep. Choice: AB. Presentation: AB. Utility: BC (Incomplete)
- Sanket. Choice: B. Presentation: B. Utility: D
- Akhilesh. Choice: AB. Presentation: A. Utility: C
- Midsemester Exam answers
|
- Course Evaluation.
- The questions in html form.
- The answers.
How to read this page: There are 27 questions. Key: 0: strongly
disagree. 1: disagree. 2: undecided. 3: agree. 4: strongly agree. Each question has a
score (a histogram value) based on the number of responses. A score
of 2.91 (for example to question 21) implies that students "agree" with
the statement made (in this case, "solutions were discussed").
- The awk script used to create
the summary.
- The raw responses and commentsso that you know your response
was considered!
|