Computer Animation
This Computer Animation subject is focused on computer animation, which essentially means “computer algorithms and programming techniques for specifying and generating motion for graphical objects” (R. Parent, Computer Animation, Algorithms and Techniques, 3rd ed, Morgan Kaufmann, 2012, Preface). More specifically, it mainly deals with three-dimensional (3D) computer animation of virtual human characters. However, it introduces the field in general; and the animation techniques we discuss are more generally applicable, for instance to some virtual animals.
Computer Animation is used mainly in entertainment (movies, games, social media), but it also has applications in other areas, such as biomedicine. We focus on the former applications, as part of Computer Graphics Imagery.
The subject is presented in a very practical way, with theory, seminars, and labs closely intertwined.
Requirements
- Coding in C++ (Object Oriented Programming)
- Knowledge of 3D geometry mathematics (vectors, matrices, transformations)
- Knowledge of data containers (lists, hash tables, vectors, stacks, etc.)
- Basic knowledge of algorithms
- Knowledge of basic 3D rendering (shaders)
- It is compulsory to have previously taken the Computer Graphics course
Content
Block 1: Introduction to animations
- History
- Types of animation
- Animation techniques
- Basis of maths
Block 2: Introduction to poses
- Body animation
- Formats and GPU
- GPU pipeline and Shaders
Block 3: Animation system
- Clips
- Tracks and types
- Keyframing
- Interpolation types
- Animation Mixer
- Blending techniques
Block 4: Extended animation system
- Forward kinematics
- Inverse kinematics
Block 5: Extended animation system
- Retargeting
Block 6: Beyond skeleton body animation
- Face animation
- Hair Animation
Material
Slides
Block 1
Introduction to computer animations
Block 2
Poses and animation file formats
Block 3
Block 4
Forward and Inverse Kinematics
Block 5
Block 6