Computer Animation: Algorithms & Techniques

CSCI 712 (Fall 2023)

Syllabus


Instructor: Joe Geigel
Office: GOL (70)-3527
Office Hours: MW 12:30pm - 1:30pm (or by appt)
E-mail: Joe.Geigel@rit.edu
URL: http://www.cs.rit.edu/~jmg/
 

Course URL: http://www.cs.rit.edu/~jmg/animation
Class Lecture TR 3:30PM - 4:45PM
Classroom: 
WAL-4640 

PREREQUISITE: CSCI 510 (Introduction to Computer Graphics) or CSCI 610 (Fundamentals of Computer Graphics) or permission of instructor


Description

This course takes a look at computer animation from a programmer’s perspective.  It will investigate the theory, algorithms and techniques for describing and programming motion for virtual 3D worlds.    Approaches that will be explored include keyframing systems; kinematics, motion of articulated figures, procedural and behavioral systems, and the use of motion capture data.   This course is a programming-oriented course with major deliverables including the implementation of techniques presented in lecture as well as a final project concentrating on an area of a student’s choice.  Students enrolling in this course are expected to have proficiency in the use of at least one 3D API (e.g. OpenGL, DirectX, Java3D) or a gaming engine (e.g. Unreal or Unity).  Readings and summaries of Computer Graphics literature will be required.

Texts

These texts will supplement the material presented in lecture.  In addition,  research papers from the computer animation literature will be referenced.  A list of papers, organized by topic is available here.  Note that students will be required to submit short summaries of selected papers.

Computer Animation: Algorithm and Techniques, 2nd ed.
OPTIONAL

Computer Animation: Algorithms and Techniques, 3rd Edition,  by Rick Parent (Morgan Kauffmann, 2012), ISBN:
0124158420
Foundations of Physically Based Modeling and Animation
OPTIONAL
Foundations of Physically Based Modeling & Animation by Donald H. House and John C. Keyser (AK Peters / CRC Press, 2016), ISBN: 9781482234602
Physics for Game Developers book OPTIONAL

Physics for Game Developers by David M. Bourg (O'Reilly, 2002), ISBN: 
0596000065

Learning Outcomes

Upon completion of this course, students will be able to:

Requirements and Grading

In Computer Graphics, much like many other areas of Computer Science, the best way to learn is by doing.  Whereas the theory of animation will be discussed in the lectures, the real learning occurs when implementing this theory into code.  Thus, this course relies heavily on programming tasks.
 
The major deliverables for this course are: 

The final grade will be determined using the following weights:


 
Project 35%
Assignments 40%
Weekly Activities 25%

Policy on Late Submissions

It is extremely important to continue to make progress as the course progresses.   If you forsee any problems with meeting deliverable deadlines, please see the instructor well in advance of the deadline that might be missed we can attempt to work out alternate arrangements.    Late submissions without  prior permission or notification will be heavy penalized.


Policy on Academic Dishonesty

Please be aware of the following policies on academic dishonesty:

In short:  ANY FORM OF ACADEMIC DISHONESTY WILL NOT BE TOLERATED

Consequences of any discovered academic dishonesty incidents will be applied as specified in these policies.


A Note about Generative AI Tools

Generative AI tools (such as ChatGPT, Bing Chat, GitHub CoPilot, midjourney, and others) can be very helpful, but they also pose some risks--not just because they may provide inaccurate responses, but also because they make it very easy for you to avoid learning core concepts that are fundamental building blocks in advanced work. 

We will be doing an awful lot of coding in the class, as a means for you to learn the fundamentals of Graphics concepts and systems.   The real learning comes from the doing as opposed to presentation of the solutions.  As such, for this course, you cannot use generative AI tools in any manner to write your programs. When learning fundamental skills, you need to ensure that you master the basics. If I doubt authorship, I may ask you to explain the code or re-create aspects of the code in one of our labs – you must show that you have mastered the fundamentals.  Thus, for this class, use of Generative AI tools will not be allowed.



Policy on
Discrimination and Harassment

RIT is committed to providing a safe learning environment, free of harassment and discrimination as articulated in our university policies located on our governance website. RIT's policies require faculty to share information about incidents of gender based discrimination and harassment with RIT's Title IX coordinator or deputy coordinators, regardless whether the incidents are stated to them in person or shared by students as part of their coursework.

If you have a concern related to gender-based discrimination and/or harassment and prefer to have a confidential discussion, assistance is available from one of RIT's confidential resources on campus (listed below).

  1. The Center for Women & Gender: Campus Center Room 1760; 585-475-7464; CARES (available 24 hours/7 days a week) Call or text 585-295-3533.

  2. RIT Student Health Center: August Health Center, 1st floor; 585-475-2255.

  3. RIT Counseling Center: August Health Center, 2nd floor, room 2100; 585-475-2261.

  4. The Ombuds Office: Student Auxiliary Union/Room 1114; 585-475-7200 or 585-475-2876.

  5. The Center for Religious Life: Schmitt Interfaith Center, room 1400; 585-475-2137.

  6. NTID Counseling & Academic Advising Services: 2nd Floor Lynden B. Johnson; 585-475-6468 (v), 585-286-4070 (vp).


last updated 08/23/2023