Mathematical Foundations of Animation and Computer Graphics


This class teaches the mathematical and computational techniques that underlie the creation, encoding, display, and animation of computer-generated graphics. Programmatic techniques for translation, rotation, and scaling computer images will apply geometry and trigonometry concepts in a visual and real-time medium. Animation techniques using frame and canvas-based painting and ‘in-betweening’ will extend the drawing of 2D and 3D images. Programmatic techniques of random background generation will be explored. 3D image creation and rendering will employ the use of mesh, texture, lighting, and perspective. This class will use the Java Programming language, Blender 3D software, and AutoDesk Maya Software.


Folder and OneNote Setup Directions:
Setup Shared Google Drive Folder and File System
Google Site Setup and Sharing
Download and Install Processing

Git and GitHub Resources:
Git and GitHub Presentation

Processing Resources:
Processing Lessons at
Directions for Uploading Processing Projects to Google Site

Processing Presentations:
Functions and Drawing In Processing
Java and Processing Elements
Planning MultiShape Functions

Implementation of Actor Class in Processing
Defining Classes in Processing
UML Diagram for Actor Class
Resource: Directions for Class based programming
Resource: Directions for Creating Child Classes
Resource: Event Driven Programming for Animation
Arrays, For Loops, and using the act() Function for multiple Actors
Vectors, Trigonometry, Direction, and Velocity for Actors
Code Source: Actor Class Without Trigonometry

Rotation, Segments, and Trigonemetry in Processing
Modeling Segments with Trigonometry
Skeletons and Rigging with Segments
Directions for Adding Trigonometry Functions
UML Diagram for Segment, Skeleton, and Actor Classes
Linking Segments with Arrays and Lists
Event Driven Rigging
Resource: Written Directions for Segment and Skeleton

Modeling Polygons with Rotation in Processing
Polygon Modeling

Processing Projects
Project 01: Multi-Shape Functions
Project 02: The Actor Class
Project 03: Trigonometry 
Project 04: Particle Simulations

Creating ZIP Files for Processing Projects
Directions for turning in Processing Projects

Maya 2014 Resources:

User Interface and Modeling:
User Interface Guide
Geometry Exercise with Maya

Object Animation and Movement:
Animation, Keyframes, and Playblasts
Maya Bouncing Exercise
Directions for Uploading Playbast to Google Site

Block Modeling with Skeletons:
BlockMan Project
BlockMan Directions
Face Project

Anibot and Rig Animation
AniBot Rig Control Description
Anibot Setup Exercise
Anibot Story Project
Think Like An Animator: Express yourself in 3D
Maya Animation with Pre-Existing Rig
Storyboard Sample
Pixar Presto System Demonstration Video

Advanced Modeling with Skelecton, UV Texture, Animation
Chapters 3 through 5 in textbook
Source Images

Chapters 6 through 12 of Textbook
Project: Chapters 6 through 12


Animation and Computer Graphics Syllabus

Assignments:  (Due at beginning of class unless otherwise noted)

Tuesday, August 23rd:   Google Drive and File Area Setup
                                          Google Site Setup

Wednesday, August 24th:  Install Maya 2014 Software

Tuesday, September 6th: Maya Geometry Project

Tuesday, September 13th: Maya Animation Exercise
                                             Directions for embedding playlist

Tuesday, September 20th: BlockMan Project
                                             BlockMan Directions

Friday, September 23rd: AniBot Setup Exercise
                                          AniBot Rig Control Description

Tuesday, October 4th: AniBot Story Project
                                  Storyboards and .AVI Movie embedded in your Google Site

Wednesday, October 12th:  Processing Project 01
                                               -Screenshot of Canvas and Drawing
                                               -Screenshot of your Grid Sketch
                                               -Code for Processing Pasted into your Google Site

Tuesday, October 18th: Processing Project 02

Tuesday, October 25th: Processing Project 03

Tuesday, November 1st: Processing Project 04

Friday, November 4th:  Final Project Treatment
                                      Written on Final Project Page on Google Site.

Wednesday, November 10th: Final Project Storyboard on Google Site
Monday, November 14th: Final Project Due


Handouts folder for Animation and Computer Graphics
Topics: History of Computer Animation
Processing Program
AutoDesk Maya Download


Processing Website: Examples, Tutorials
Autodesk Digital Steam Website
Scratch Online Editor
Pink Panther Rig
Animation Mentor Website

Emergency Lesson Plans:

Code Academy Lessons