logistics
play

Logistics Projects Interpolation of Quaternions Reminder that - PDF document

Logistics Projects Interpolation of Quaternions Reminder that proposal is due before break. Assignments Reminder that Assignment 1 is due before break. Readings Keep those summaries coming Logistics Plan for today


  1. Logistics  Projects Interpolation of Quaternions  Reminder that proposal is due before break.  Assignments  Reminder that Assignment 1 is due before break.  Readings  Keep those summaries coming Logistics Plan for today  Grad Report  Interpolation leftovers  Will need topics first week after we return  Interpolation of Quaternions from break.  Assignment #2. Plan for today Motivation Films  Small change in plans  Computer Animated Feature Films (Theatrical Release)  Today: Keyframing and Interpolation  44 since (and including) Toy Story  Wednesday: More on interpolation  17 currently in Production  http://www.boxofficemojo.com/genres/chart/?id=computeranimation.htm  Leave dynamics until we get back.  Major players  Pixar  New schedule on Web site  PDI/Dreamworks  Blue Sky / FOX  Sony Imageworks  Disney  But first… 1

  2. Motivational Films Motivation Films  Anyone know what is the most  Pacific Data Images (PDI)  Makers of Shrek and ANTZ successful computer animated feature  Founded in 1980 (doing flying logos) film?  1990 – Morphing for Michael Jackson’s “Black and White” Video  1996 – Signed on with Dreamworks SKG to produce ANTZ  Shrek 2 (PDI / Dreamworks)  2000 – Aquired by Dreamworks (PDI/Dreamworks)  Shrek the 3rd is 3rd  2001 – Shrek wins Oscar for best animated feature  2004 -- Shrek 2 becomes highest grossing animated feature.  Shrek is 4th Motivational Films Motivational Films  Animated features by PDI/Dreamworks  Films in the works by PDI/Dreamworks  ANTZ (1999)  In the works  Shrek (2001)  Kung Fu Panda (June 2008)  Shrek 2 (2004)  Madagascar II (Nov 2008)  Shark Tale (2004)  Monsters and Aliens (May 2009)  Madagascar (2005)  How to Train Your Dragon (Nov 2009)  Over the Hedge (2006)  Shrek IV (May 2010)  Flushed Away (2006)  Shrek the Third (2007)  Bee Movie (2007) Motivational Film Motivational Film  Locomotion (1988)  Homer3 (1995)  One of PDIs first animated shorts  Aired as part of "Treehouse of Horror VI" Simpsons Halloween special 2

  3. Let’s get started Coordinate Transformations an · i · ma · tion (n)  How to specify placement of individual objects into a scene a motion picture made from a series of  Two coordinate systems drawings simulating motion by means of  Object coordinate system slight progressive changes in the drawings  World coordinate system Transformation matrix Motion Control Algorithms translation  Goal: x m m m m x � � � � � � 11 12 13 14 w o  Reduce the degrees of freedom to a � � � � � � y m m m m y number that is manageable to an animator. w 21 22 23 24 o � � � � � � = �  Algorithms must provide a set of z m m m m z � � � � � � 31 32 33 34 w o “meaningful” parameters. � � � � � � 1 m m m m 1 � � � � � � { 41 42 43 44 { 1 4 4 4 4 2 4 4 4 4 3 world object transforma tion rotation 6. Straight ahead action and Pose-to-pose Key framing action  The two main approaches to hand drawn  The simplest form of animating an object. animation.  Object has:  Straight ahead action  A beginning state  “the animator works straight ahead from his first drawing  An end state in the scene.”  Pose-to-pose (keyframing)  A number of intermediate “key” states  the animator plans his actions, figures out just what  It is up to the keyframe system to determine drawings will be needed to animate the business, makes the drawings concentrating on the poses, ... and then the states for inbetween frames draws the inbetweens.”  Link 3

  4. Quaternions Quaternion math  Similar idea to axis/angle  Given 2 quaternions  q 1 =[w 1 , x 1 , y 1 , z 1 ] = [w 1 , v 1 ]  Define an orientation by a 4-tuple  q 2 =[w 2 , x 2 , y 2 , z 2 ] = [w 2 , v 2 ]  [w, x, y, z]  Quaternion addition:  Or by a pair  [w, v] where w is a scalar and v is a 3d  q 1 + q 2 = [w 1 +w 2 , v 1 +v 2 ] vector.  q 1 + q 2 = [w 1 +w 2 , x 1 + x 2 , y 1 + y 2 , z 1 + z 2 ] Quaternion math Quaternion math  Quaternion multiplication  Magnitide of a quaternion  (q 1 * q 2 ) = [w 1 w 2 - v 1 ⋅ v 2 , w 1 v 2 + w 2 v 1 + v 1 × v 2 ]  ||q 1 || = sqrt (w 1 2 + x 1 2 + y 1 2 + z 1 2 )  (q 1 * q 2 ).w = (w 1 w 2 - x 1 x 2 - y 1 y 2 - z 1 z 2 )  Yes, you can (and should) normalize  (q 1 * q 2 ).x = (w 1 x 2 + x 1 w 2 + y 1 z 2 - z 1 y 2 ) quaternions.  (q 1 * q 2 ).y = (w 1 y 2 - x 1 z 2 + y 1 w 2 + z 1 x 2 ) q [ 1 0 0 0 ] q  (q 1 * q 2 ).z = (w 1 z 2 + x 1 y 2 - y 1 x 2 + z 1 w 2 )  Identity properties = s v [ ] − 1  Note: quaternion multiplication is not commutative. q − = 2 q 1 qq − [ 1 0 0 0 ] = Quaternions and rotation. Quaternion math  Quaternions essentially encodes the info  Quaternion dot product of an axis/angle rotation cos � = q 1 • q 2 = w 1 w 2 + ( v 1 • v 2 ) R α , (x,y,z) = [ cos( α /2), sin ( α /2) • (x, y, z) ] θ Is angle between quaternions in quaternion space Nomenclature note: α rather than θ 4

  5. Quaternions Quaternions  To interpolate quaternions  A series of rotations can be  Interpolate each element one at a time accomplished by using quaternion multiplication  Sort of….  Rotation by p then by q is the same as  By the way, rotation by qp  Gentle mathematic treatment of quaternions and rotation (including interpolation) on READING LIST Interpolating Quaternions Interpolating Quaternions  In animation, only unit quaternions  Direct interpolation of quaternion should be used components can give “misleading” results.  Normalize those quaternions!  Figure 6-3 in quat paper.  Quaternions live in 4-D space  Normalized quaternions will lie on the unit 4D sphere. Spherical linear interpolation Interpolating Quaternions (Slerp)  Direct interpolation of quaternion components can give “misleading” results. Linear interpolate angle along hypersphere 5

  6. Interpolating Quaternions Interpolating Quaternions  Spherical Linear Interpolation (Slerp)  Spherical Linear Interpolation (Slerp) sin(( 1 u ) ) sin( u ) � � � slerp ( q , q u ) q q = +  slerp (q 1 ,q 2 , 1/2) can be efficiently 1 2 , 1 2 sin sin � � computed (within a scale factor) as q 1 + q 2  recall  Scale factor okay since you’ll need to cos � = q 1 • q 2 = w 1 w 2 + ( v 1 • v 2 ) normalize anyway. Note that result of slerp is not necessarily unit length (even if keyframes are)…Normalization required! Interpolating Quaternions Interpolating Quaternions  Comparison of Lerp and Slerp  Note:  Spherical Linear Interpolation has the same problem as linear interpolation (no tangential continuity)  For smooth interpolation, Shomake recommends the use Bezier curves  Issues:  But what about those control points?  How does one do “cubic interpolation” in quaternion space  Section 3.3.1 (page 110) in Parent text Cubic Interpolation Cubic Interpolation  Bezier Curves  Bezier Curves  specified by endpoints and intermediate 1 3 3 1 � � P points, not on the curve, that approximate � � � � 0 � � � � the tangent vectors 3 6 3 0 P � � M � � � 1 � = G H = B 3 3 0 0 � � P � � � 2 � � � � 1 0 0 0 P � � � � 3 Let’s go to the video tape 6

  7. Bezier control points Bezier control points  Defining control points  Defining control points:  Algorithm:  Assume you need the path between p n and  For a point p n : p n+1  For control point after (a n ):  For each p n , you’ll need 2 control points,  Take vector from p n-1 to p n and add to p n (Point one before it and one after it. 1)  Take average of Point 1 with p n+1 to define control point a n  For control point before (b n )  Take vector from a n to p n  Add it to p n to get b n Bezier control points Bezier control points  Control points for end conditions:  First control point (a 0 )  Take the vector from p 2 to p 1 and add to p 1  Similar for last control point. Quaternions and Bezier So far  Applying this to quaternions  We have:  Adding vectors == concatenating rotations  Rotation keyframes defined as quaternions  Quaternion multiplication in reverse  We have Bezier control points  Averaging == slerp to midpoint (u = 1/2)  The same as quaternion addition.  What we need:  The interpolated rotations between keyframes.  Questions? Break 7

  8. Interpolating rotations De Casteliau construction  Applying spline definition  DeCasteljau Construction  Geometric means of finding values of Bezier  Becomes messy fast Curves using repeated use of linear interpolation.  Instead, use De Casteljau construction. de Casteljau Construction de Casteljau Construction p 1 p 1 q 1 q 0 ( ) q 0 ( t ) = Lerp t , p 0 , p 1 p 0 p 0 p 2 p 2 ( ) q 1 ( t ) = Lerp t , p 1 , p 2 Start with the control points  And given a value of t ( ) q 2  q 2 ( t ) = Lerp t , p 2 , p 3 In the drawings, t ≈ 0.25  p 3 p 3 de Casteljau Constuction de Casteljau Construction q 1 r 0 r 0 • q 0 r 1 x r 1 ( ) ( ) x ( t ) = Lerp t , r 0 ( t ), r 1 ( t ) r 0 ( t ) = Lerp t , q 0 ( t ), q 1 ( t ) ( ) r 1 ( t ) = Lerp t , q 1 ( t ), q 2 ( t ) q 2 Applet 8

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend