Lecture Notes
Will be followed in the following order.- Introduction and Technical Background
- Interpolating Values I
- Interpolating Values II
- Interpolating Values III
- Interpolation based Animation I
- Interpolation based Animation II
- Kinematic Linkages I
- Kinematic Linkages II
- Kinematic Linkages III
- Physically based Animation I
- Physically based Animation II
- Physically based Animation III
- Physically based Animation IV
- Special Models for Animation I
- Special Models for Animation II
- Special Models for Animation III
Related Course Materials:
- Tutorial on 'Animating Rotation with Quaternion Calculus
- Quaternion Algebra and Calculus
- Understanding 'slerp'
- Notes for Curve Interpolation
- Cubic Bezier Curves and De Casteljau algorithm (recurrence formula)
- Interpolation using Composite Bezier Curves (pp 69-73 of "Uniform Cubic B-Spline Curve Interpolation")
- Uniform Cubic B-Spline Curve Interpolation (You only need pp 116-129 if you know definitions of uniform and non-uniform basis functions)
- Information on Clifford Algebra (covers quaternion as a special case)
Related Course Websites:
This is the home page of CS633: Computer Animation.
Fuhua (Frank) Cheng, Instructor, cheng@cs.uky.edu
This course presents algorithms and programming techniques for specifying and generating motion for graphical objects. It addresses practical issues and provides accessible techniques and straightforward implementations. It is not intended for animators using off-the-shelf animation software, nor does it address the issue of computer-assisted animation, i.e., the computerization of conventional hand-drawn techniques. This course is primarily concerned with 3D computer animation. Motion specification techniques in two categories: interpolation and basic techniques and kinematic control of articulated figures, are studied and discussed. The interpolation and basic techniques category consists of ways in which the computer is used to fill in the details of the motion once the animator specifies the required information, such as key framing and path following. kinematic control of articulated figures generate motion using a set of rules or constraints that specify what is to be done instead of how is to be done. Model-specific applications are also surveyed. These are grouped into two general areas: real-world processes simulation and figure modeling (human figure modeling and facial modeling). The graphics library used in this course is OpenGL.
The course syllabus is available in pdf format.
openGL
- Install OpenGL for Mac (1)
- Install OpenGL for Linux, OS/X, and Windows (a better site)
- Install OpenGL for Windows (1)
- How to install openGL (2)
- Free OpenGL download site
- OpenGL Tutorial site I (beginners tutorials)
- OpenGL Tutorial site II (Intermediate Tutorials)
- OpenGL Tutorial site III (Miscellaneous)
- OpenGL Tutorial site IV
- OpenGL Reference Manual
- References on OpenGL
- Computer Graphics through OpenGL's website
Sample Programs
- GettingStarted I, II, III
- Spinning Square
- Zoom in/out of Shaded Scene
- 3DView_Transf
- TextureMapping
- Shadow Generation
Animation Studios
Animation Software Companies
- Side Effects Software (Houdini's developer)
- Alias | Wavefront (currently owned by Autodesk)
- Macromedia (Extreme 3D, Director, among others) (currently owned by Adobe)
- Softimage
Models, Images and Demo Reels
Homework Assignments
-
Homework 1 (due date: 2/6/2018)
(Animated 2D Bouncing Sample Program) - Homework 2 (due date: 2/15/2018)
- Homework 3 (due date: 3/1/2018)
- Homework 4 (due date: 3/20/2018)
- Homework 5 (due date: 4/5/2018)
- Homework 6 (due date: 4/19/2018)
- Homework 7 (due date: 5/1/2018)
Homework Solution Sets
-
Solution set of Homework 1
(A better Animated 2D Bouncing Program) - Solution set of Homework 2
- Solution set of Homework 3
- Solution set of Homework 4
- Solution set of Homework 5
- Solution set of Homework 6
- Solution set of Homework 7