Animation CS 148: Summer 2016 Introduction of Graphics and Imaging Zahid Hossain
Animation Animation Art Driven Physics Driven 2 CS 148: Introduction to Computer Graphics and Imaging (Summer 2016) – Zahid Hossain
Animation Animation Art Driven Physics Driven Computer Graphics 3 CS 148: Introduction to Computer Graphics and Imaging (Summer 2016) – Zahid Hossain
Animation Story Telling Animation Art Science Art Driven Physics Driven Engineering Computer Graphics 4 CS 148: Introduction to Computer Graphics and Imaging (Summer 2016) – Zahid Hossain
Animation Story Telling Animation Art Science Art Driven Physics Driven Engineering Computer Graphics 5 CS 148: Introduction to Computer Graphics and Imaging (Summer 2016) – Zahid Hossain
Luxo Jr. (Pixar Animation 1986) 6 CS 148: Introduction to Computer Graphics and Imaging (Summer 2016) – Zahid Hossain
Principles of Animation 1981 7 CS 148: Introduction to Computer Graphics and Imaging (Summer 2016) – Zahid Hossain
Squash and Stretch Rigidity/Flexibility Lively Expressions 8 CS 148: Introduction to Computer Graphics and Imaging (Summer 2016) – Zahid Hossain
Anticipation 9 CS 148: Introduction to Computer Graphics and Imaging (Summer 2016) – Zahid Hossain
Slow In And Slow Out 10 CS 148: Introduction to Computer Graphics and Imaging (Summer 2016) – Zahid Hossain
Arcs 11 CS 148: Introduction to Computer Graphics and Imaging (Summer 2016) – Zahid Hossain
Principles of Animation https://www.youtube.com/watch?v=5l2Aem7Ll3A 12 CS 148: Introduction to Computer Graphics and Imaging (Summer 2016) – Zahid Hossain
Keyframe Animation 13 CS 148: Introduction to Computer Graphics and Imaging (Summer 2016) – Zahid Hossain
Keyframes Specify significant • poses Automatically fill in • motion between these points in time. http://graphics.stanford.edu/courses/cs148-10-summer/docs/10_anim_interact.pdf 14 CS 148: Introduction to Computer Graphics and Imaging (Summer 2016) – Zahid Hossain
Not a New Idea Tweening: Not a fun job! 15 CS 148: Introduction to Computer Graphics and Imaging (Summer 2016) – Zahid Hossain
CAPS Computer-Aided Production System: 1980 Tweening : Computer Does Interpolation 16 CS 148: Introduction to Computer Graphics and Imaging (Summer 2016) – Zahid Hossain
Animation Curves Curves specify paths that objects take over time Knots are positions Tangents are velocities 17 CS 148: Introduction to Computer Graphics and Imaging (Summer 2016) – Zahid Hossain
Catmull-Rom Spline ? 𝑞 % 𝑞 $ 𝑞 # 𝑞 " 18 CS 148: Introduction to Computer Graphics and Imaging (Summer 2016) – Zahid Hossain
Catmull-Rom Spline 𝑢 = 1 𝑢 = 0 𝑔 1 = 𝑞 % 𝑔 0 = 𝑞 $ 𝑞 # 𝑞 " 𝑔 𝑢 = 𝑏 * + 𝑏 " 𝑢 + 𝑏 $ 𝑢 $ + 𝑏 % 𝑢 % 19 CS 148: Introduction to Computer Graphics and Imaging (Summer 2016) – Zahid Hossain
Catmull-Rom Spline 𝑢 = 1 𝑢 = 0 𝑔 1 = 𝑞 % 𝑔 0 = 𝑞 $ 𝑔 . * = 𝑞 % − 𝑞 " 𝑔′ 1 = 𝑞 # − 𝑞 $ 𝑞 # 𝑞 " 𝑔 𝑢 = 𝑏 * + 𝑏 " 𝑢 + 𝑏 $ 𝑢 $ + 𝑏 % 𝑢 % 20 CS 148: Introduction to Computer Graphics and Imaging (Summer 2016) – Zahid Hossain
Catmull-Rom Spline 𝑢 = 1 𝑢 = 0 𝑔 1 = 𝑞 % 𝑔 0 = 𝑞 $ 𝑔′ 1 = 1 𝑔 . * = 1 2 (𝑞 # − 𝑞 $ ) 2 (𝑞 % − 𝑞 " ) 𝑞 # 𝑔 𝑢 = 𝑏 * + 𝑏 " 𝑢 + 𝑏 $ 𝑢 $ + 𝑏 % 𝑢 % 𝑞 " 𝑔 1 = 𝑏 * + 𝑏 " + 𝑏 $ + 𝑏 % = 𝑞 % 𝑔 0 = 𝑏 * = 𝑞 $ 𝑔 . (1) = 𝑏 " + 2𝑏 $ + 3𝑏 % = 1 𝑔′ 0 = 𝑏 " = 1 2 (𝑞 # − 𝑞 $ ) 2 (𝑞 % − 𝑞 " ) 21 CS 148: Introduction to Computer Graphics and Imaging (Summer 2016) – Zahid Hossain
Catmull-Rom Spline Writing the control points 𝑞 5 in terms of the parameters 𝑏 6 22 CS 148: Introduction to Computer Graphics and Imaging (Summer 2016) – Zahid Hossain
Catmull-Rom Spline 𝑫 𝟐 Continuity Fundamentals of Computer Graphics - Shirley Page: 365 23 CS 148: Introduction to Computer Graphics and Imaging (Summer 2016) – Zahid Hossain
Catmull-Rom Spline: Continuity 𝑞 % 𝑞 $ 𝑞 # 𝑞 " 24 CS 148: Introduction to Computer Graphics and Imaging (Summer 2016) – Zahid Hossain
Catmull-Rom Spline 𝑞 % 𝑞 $ Outgoing Tangent Incoming Tangent 𝑞 # 𝑞 " 25 CS 148: Introduction to Computer Graphics and Imaging (Summer 2016) – Zahid Hossain
Catmull-Rom Spline 𝑞 % 𝑞 $ Incoming Tangent 𝑞 # Outgoing Tangent 𝑞 " “Outgoing Tangent” becomes “Incoming Tagent” for the next Segment 26 CS 148: Introduction to Computer Graphics and Imaging (Summer 2016) – Zahid Hossain
Framework for Animation Curves • Tension • Sharpness near keyframes • Continuity • Different in/out tangents • Bias • Overshoot or undershoot 27 CS 148: Introduction to Computer Graphics and Imaging (Summer 2016) – Zahid Hossain
Framework for Animation Curves Fundamentals of Computer Graphics - Shirley Page:420 28 CS 148: Introduction to Computer Graphics and Imaging (Summer 2016) – Zahid Hossain
Bezier Curve Fundamentals of Computer Graphics - Shirley Page:365 29 CS 148: Introduction to Computer Graphics and Imaging (Summer 2016) – Zahid Hossain
Slow-In-Slow-Out Replace an animation parameter 𝒖 with 𝒗(𝒖) Bezier Curve is tunable way to implement this u t 30 CS 148: Introduction to Computer Graphics and Imaging (Summer 2016) – Zahid Hossain
Key Values vs Key Frames Animation composed of several parameters • Parameters may not agree on which “frame” is important, i.e. there is no “key- • frame” per-se. Create path for each parameter, which has key-values specified in appropriate • frames. 31 CS 148: Introduction to Computer Graphics and Imaging (Summer 2016) – Zahid Hossain
Specialized Curves for Animation “Wiggly Splines” Kass and Anderson, SIGGRAPH 2008 32 CS 148: Introduction to Computer Graphics and Imaging (Summer 2016) – Zahid Hossain
Interpolating Orientations 33 CS 148: Introduction to Computer Graphics and Imaging (Summer 2016) – Zahid Hossain
Interpolating Matrices ? 90° CW 90° CCW Not a rotation ! 34 CS 148: Introduction to Computer Graphics and Imaging (Summer 2016) – Zahid Hossain
Euler Angles http://www.chrobotics.com/wp-content/uploads/2012/11/Inertial-Frame.png 35 CS 148: Introduction to Computer Graphics and Imaging (Summer 2016) – Zahid Hossain
Gimbal Lock 36 CS 148: Introduction to Computer Graphics and Imaging (Summer 2016) – Zahid Hossain
Spherical Linear Interpolation (SLERP) LERP: Linear Interpolation 37 CS 148: Introduction to Computer Graphics and Imaging (Summer 2016) – Zahid Hossain
Spherical Linear Interpolation (SLERP) Quaternions [Hamilton 1843] 38 CS 148: Introduction to Computer Graphics and Imaging (Summer 2016) – Zahid Hossain
Quaternions Euler Quaternions Matrix For conversion formulae https://en.wikipedia.org/wiki/Conversion_between_quaternions_and_Euler_angles 39 CS 148: Introduction to Computer Graphics and Imaging (Summer 2016) – Zahid Hossain
Character Animation 40 CS 148: Introduction to Computer Graphics and Imaging (Summer 2016) – Zahid Hossain
Recall: Hierarchical Modeling Body Torso Head Shoulder Hips LeftArm LeftLeg UpperArm UpperLeg LowerArm LowerLeg Hand Foot RightArm RightLeg UpperArm UpperLeg LowerArm LowerLeg Hand Foot 41 CS 148: Introduction to Computer Graphics and Imaging (Summer 2016) – Zahid Hossain
Forward Kinematics (FK) Manipulate degrees of freedom directly, construct geometry hierarchically. 42 CS 148: Introduction to Computer Graphics and Imaging (Summer 2016) – Zahid Hossain
Inverse Kinematics (IK) Determine change in parameters from position of end effector. 43 CS 148: Introduction to Computer Graphics and Imaging (Summer 2016) – Zahid Hossain
Inverse Kinematics (IK) Determine change in parameters from position of end effector. 44 CS 148: Introduction to Computer Graphics and Imaging (Summer 2016) – Zahid Hossain
Skinning and Bone Animation • Skeleton Nodes represents joints • Joints are local Coordinate Systems (frames) • Edges represents bones • • Skin 3D model/surface driver by skeleton • Both are designed in a reference pose (rest pose) http://www.cs.cmu.edu/~yaser/Lecture-9-Skinning%20and%20Body%20Representations.pdf 45 CS 148: Introduction to Computer Graphics and Imaging (Summer 2016) – Zahid Hossain
Skeleton in Reference Pose • Root Frame expressed with respect to the world: 𝑆 * • Relative Joint Coordinate Frames - 𝑆 " , 𝑆 $ , 𝑆 % … 𝑆 6 http://www.cs.cmu.edu/~yaser/Lecture-9-Skinning%20and%20Body%20Representations.pdf 46 CS 148: Introduction to Computer Graphics and Imaging (Summer 2016) – Zahid Hossain
Recommend
More recommend