3D model animation
and
CGI animation techniques
Hei Chun Shum
Computer Graphics Seminar (MTAT.03.305)
From Animation to Computer Animation
a stop motion/pixilation scene from Hôtel électrique (1908)
Illusion of motion
https://paulbakaus.com/tutorials/performance/the-illusion-of-motion/
EVOLUTIONS!
Realism
(The Illusion of Life: Disney Animation,1981)
Twelve basic principles of animation
(Ollie Johnston and Frank Thomas 1981)
Squash and stretch
Short timeline of 3D animations in films
1977
1991
create major movie 3D effects
1993
1997
under Linux (Red Hat 4.1)
Linux Helps Bring Titanic to Life
“Since building a full-scale model of the Titanic would have been prohibitively expensive, only a portion of the ship was built full size (by the production staff), and miniatures were used for the rest of the scenes. To this model we added other elements of the scene such as the ocean, people, birds, smoke and other details that make the model appear to be docked, sailing or sunk in the ocean. To this end, we built a 3D model and photographed 2D elements to simulate underwater, airborne and land-based photography.”
https://www.linuxjournal.com/article/2494
1997
2004
created with motion capture
2009
Better CGs
Better animations
Better industry tools
Fancy right?
but how ?
3D Animation Techniques
Skeleton animation and Morph Target Animation
In almost all 3D animation software...
Skeletal animation (rigging)
Rigging is making our characters able to move. The process of rigging is we take that digital sculpture, and we start building the skeleton, the muscles, and we attach the skin to the character, and we also create a set of animation controls, which our animators use to push and pull the body around.
"What is 3D Rigging for Animation & Character Design?"
Petty, Josh.
Rigging workflow
(bones to vertices groups)
Principle behind - Kinematics
6DoF
Translation and Rotation (geometry)
Moving up and down (elevating/heaving)
Moving left and right (strafing/swaying)
Moving forward and backward (walking/surging)
Swivels left and right (yawing)
Tilts forward and backward (pitching)
Pivots side to side (rolling)
Single rigid mesh
Kinematic chain
n : moving links
j : joints each with freedom fi, i = 1
* N includes the fixed link
Forward kinematics
Geometrical Interpretation
The forward kinematic animation problem uses the kinematics equations to determine the pose given the joint angles
The inverse kinematics problem computes the joint angles for a desired pose
Procedural animation
Inverse kinematics
IK Arm Rig example in Blender
Gradient Descent
Derivative
Estimated gradient
Update parameter
Optimization algorithm
Gradient Descent
Inverse kinematics
function(f) which takes a parameter αi for each joint of our robotic arm
α - current angle of the joint
function f(α) return a single value indicates how far the effector of the robotic arm is from the target point T
Objective - find the values for Δ that minimise f
Apply gradient descent
Morph Target Animation
Morphing Before 1990s
slides adapted from CSC320: Introduction to Visual Computing, University of Toronto
slides adapted from CSC320: Introduction to Visual Computing, University of Toronto
slides adapted from CSC320: Introduction to Visual Computing, University of Toronto
5:50 - same base mesh, same amount of porygons
Morph animation comparing with skeleton animation
Side Topic - Computer Facial animation
2 main areas
(eg. motion capture and keyframing)
(eg. morph targets animation, skeleton animation)
Motion capture
Audio-driven techniques
Side Topic - Motion Matching
2002 University of Wisconsin
2010 University of Washington
GDC2016 Ubisoft Toronto (https://www.youtube.com/watch?v=KSTn3ePDt50)
2020 Ubisoft La Forge
Motion Matching (current)
Motion Matching (current)
Learned Motion Matching
“Our goal in this research is simple: to replace the Motion Matching machinery with something that produces exactly the same result, but which does not require keeping as much data in memory. The work flow for animators should remain exactly the same: let them craft whatever system they like using Motion Matching and as much data as they want. Then, once they are finished, plug-in an alternative system which produces the same result but which has both lower memory usage and constant CPU cost. This is where Learned Motion Matching comes in.”
Ubisoft La Forge
https://montreal.ubisoft.com/en/introducing-learned-motion-matching/
Learned Motion Matching
Goal: remove the animation dataset from the diagram
Side Topic - Ragdoll physics
Beyond ragdoll and keyframe animation
Euphoria
RAGE(Rockstar Advanced Game Engine) integrates the third-party middleware components Euphoria
Future of 3D animation
Reference
https://www.utdallas.edu/atec/midori/Handouts/procedural_animation.htm
https://www.alanzucconi.com/2017/04/17/procedural-animations/
https://en.wikipedia.org/wiki/Ragdoll_physics
https://pointintimestudios.com/the-future-of-3d-animation/
https://www.cs.toronto.edu/~mangas/teaching/320/slides/CSC320T12.pdf
https://people.eecs.berkeley.edu/~jrs/meshpapers/LeeDobkinSweldensSchroder.pdf
https://montreal.ubisoft.com/en/introducing-learned-motion-matching/
Thank you for listening