The course provides a comprehensive overview of algorithms and software techniques for generating animated movies and
interactive animation programs. This course is aimed at computer science students interested in understanding the underlying
concepts and techniques of computer animation. Through the development of a significant project using industry standard graphics
libraries, students will learn proven techniques of computer animation. Though not extensively mathematical, the course will
expose students to mathematical concepts such as curve representations, numeric interpolation and parameterization where appropriate.
- Instructor: Stephen Brooks
- Time: 11:35-12:55, Wednesdays and Fridays
- Location: LSC-COMMON AREA C238
- Lab Hours: 1:35-2:25 pm, Mondays, CS 133 (no TA) & CS 143 (with TA help)
- Learning Center Help Hours: Wednesdays 10-11am and Mondays 4-5pm
- Office Hour: 3:00-4:00pm, Fridays, CS 327
- Explain the origins of graphics and animation.
- Discuss the graphics pipeline.
- Develop OpenGL graphics applications.
- Understand key frame animation.
- Implement interpolated graphics.
- Grasp the mathematical underpinnings of introductory graphics.
- Understand color spaces in graphics applications.
- Implement multi-stage affine transformations
- Setup and manipulate orthographic and perspective projections.
- Design and implement pixel and vertex shaders
Hardware & Software
Programming assignments will be done on the Windows platform in C/C++ using the OpenGL and GLUT libraries.
You are welcome to use C/C++, Glut and OpenGL on your own machine, although Linux and Macs will not be supported in the lectures. If you do decide to
your own machine, you will need to port and test your code on the Faculty's Windows machines (could be Windows running on the Macs in the lab) prior to handing it in (if we can't run it,
we can't mark it).
Although we use platform independent libraries, please
be warned that it will still require a minimal amount of effort to port your code.
- CSCI 2110 (Computer Science III)
- CSCI 2132 (Software Development)
- MATH 2030 (Matrix Theory and Linear Algebra)
There are three items that will make up the final grade for this course:
- 40% Tests (2)
- 20% Programming Assignments (2)
- 40% Final Project
- Test #1: Friday, October 13th, in class
- Test #2: Friday, November 29th, in class
All work you submit must be your own. It is fine to discuss problems, but when it comes time to submit solutions,
the materials you hand in must be done individually, by yourself. Any materials referenced must be attributed.
All suspected instances of academic dishonesty must be reported to the Senate Discipline Committee.
In particular, you should never show another student code that you have written for an assignment in this course,
nor should you write code for another student to use in his/her assignment. Note that this specifically prohibits
working with other students when writing the code for your assignments. As I said above, it is fine to discuss problems,
but the code you submit must be your own, written by you alone.
For further information regarding academic honesty at Dalhousie, please see the University plagiarism website.
Also note that all assignments and projects will be checked for plagiarism using automated software.
Late Submission Policy
Late assignments will be penalized 5% per day (or part thereof). You may not receive credit for work that is more than 3 days late.
The project CANNOT BE HANDED IN LATE (no exceptions).
Return to main page.