CS 231: Computer Animation

General

Instructor

Craig Schroeder

Office: Chung 309
Office Hours: 5:00-6:00 PM

Email: craigs@cs.ucr.edu

Course Summary

Computer animation encompasses a broad array of techniques that are used in the production of animated films, computer games, and special effects. This course will cover topics in computer animation including keyframing, motion capture, inverse kinematics, and dynamic simulation. The primary goal of this course is to provide a broad introduction to the techniques and challenges of computer animation.

Schedule

Date Topic Due
04/01 introduction, keyframing, interpolation
04/03 rigging, procedural animation, kinematics
04/08 motion capture
04/10 crowd simulation, rotations project proposals due
04/15 solving equations, optimization
04/17 midterm
04/22 basics of simulation
04/24 paper presentations slot 1, slot 2
04/29 deformable simulation
05/01 paper presentations slot 3, slot 4
05/06 debugging simulations midterm updates 1-4
05/08 midterm updates 5-12
05/13 rigid body simulation
05/15 paper presentations slot 5, slot 6
05/20 paper presentations slot 7, slot 8
05/22 paper presentations slot 9, slot 10
05/27 paper presentations slot 11, slot 12
05/29 project presentations 1-4
06/03 project presentations 5-8
06/05 project presentations 9-12
final project presentations (if needed)

Announcements

Grading

5%Project proposal
5%Midterm presentation
20%Final report
15%Project presentation
15%Paper presentation
15%Participation
10%Midterm exam
15%Exercises

Paper Presentations

Students will present one computer animation paper from the literature during class. This paper may be related to the project. If you are implementing a paper for your project, you may present that paper. Each student must present a different paper, so if you are completing the project with a partner, only one partner may present that paper. The other partner is free to present a related paper, though. Paper presentations should be 25 minutes. Each presentation will be followed by 10 minutes of Q/A and discussion. The presenter should be prepared to answer questions about the paper. All students should come prepared to discuss all of the papers (skim the paper before class, even if you are not presenting it). Your preparedness and participation in these discussions will form the basis for the participation component of your grade.

Projects

Students will complete one programming project, which will span the majority of the quarter. This project will begin with a proposal (2-3 pages). The proposal should detail (a) what you are proposing to do, (b) the scope of the project, (c) a general overview of the tasks will be involved in completing the project, and (d) how much of the project will be completed in time for the midterm update. You will need to research your project topic somewhat before you write the proposal. Although it is not required, it is strongly recommended that you take this opportunity to plan out weekly milestones for yourself to help you pace out the work for your project.

Students must do a midterm project presentation during week 6. This presentation should be 8 minutes and should show your progress on your project. If you have not yet completed tasks that you proposed to have completed by this time, you should explain what those were and why they have not yet been completed. If you have completed tasks ahead of schedule, this would also be good to present. Being able to demo a work in progress would also be nice.

All final project write-ups (4-6 pages) are due on Monday night of week 10, even for projects presented in week 9 or during the final exam slot (if any). This write-up should cover (a) which proposed tasks were completed, (b) which parts were not completed or do not work well and why, (c) any lessons learned from the project, and (d) the results that were obtained. Snapshots, images, and/or other visual outputs from the programs are required in the final write-up and are not counted towards the write-up's page length. (Discussion of the tests that were run and the results that were obtained counts towards the page length. Only the images themselves are not included.) You must submit documented source code for your project electronically (through Canvas) on the same day. Source code quality (clear documentation, clean coding style, efficient implementation, good organization, etc.) will make a minor contribution to your project write-up grade.

Final project presentations (15-minutes each) will be made in class at the end of the course. These presentations take the place of a final exam. These presentations must include a demonstration of the results of your project, and at least half of your presentation time must be spent on this. For projects that run slowly, it is recommended that you create movies from your results and show them during your final presentation. You are encouraged to show both good results and bad during your presentation.

Projects may be completed with a partner. One proposal, midterm presentation, final write-up, and final presentation should be completed for each project. All students will make individual paper presentations.

Project suggestions (you may suggest something else)