ComputerCt AnimationA i tiAlgorithms and TechniquesInterpolating ValuesRick ParentComputer Animation
AnimationAnimator specifiedinterpolationkey frameAlgorithmically n captureRick ParentComputer Animation
MotivationCommon problem: given a set of pointsSmoothly (in time and space) move an objectthrough the set of pointsExampleEl additionaldditil temporaltl constraints:t i tFrom zero velocity at first point, smoothlyaccelerate until time t1, hold a constantvelocity until time t2, then smoothlydecelerate to a stop at the last point at time t3Rick ParentComputer Animation
Motivation – solution steps11. ConstructC t t a space curve ththattinterpolates the given points withpiecewise first order continuity2. Construct an arc-length-parametricvaluel functionfti forf theth curve33. Construct timetime-arc-lengtharc length functionaccording to given constraintsp P(u)u U(s)uU(s)ss S(t)S(t)p P(U(S(t)))Rick ParentComputer Animation
Interpolating functionInterpolation v. approximationComplexity: cubicContinuity: first degree (tangential)Local v. global control: localInformation requirements: tangents needed?Rick ParentComputer Animation
Interpolation v. ApproximationRick ParentComputer Animation
ComplexityLow complexityreduced computational costPoint of InflectionCan match arbitrary tangents atend pointsCUBIC polynomialRick ParentComputer Animation
ContinuityRick ParentComputer Animation
LLocall v. GlobalGl b l ControlC t lRick ParentComputer Animation
Information requirementsjust the pointstangentsinterior control pointsjust beginning andending tangentsRick ParentComputer Animation
Curve FormulationsLagrange PolynomialPiecewise cubic polynomialsHermiteCatmull-RomBlended ParabolasBezierB-splineTension Continuity BiasTension-Continuity-Bias4-Point FormRick ParentComputer Animation
LagrangeLPolynomialRick Parentx xkPj ( x) y j k 1 x j xkxk jComputer Animation
LagrangeLPolynomialRick Parentx xkPj ( x) y j k 1 x j xkxk jComputer Animation
Polynomial Curve FormulationsNeed to match realreal-worldworld data v. design from scratchInformation requirements: just points? tangents?Qualities of final curve?BlendingIntuitive enough?FunctionsOther shape controls?P U MB FB U AT[u3u2Rick Parent]u efficientmatrixComputer Animation
HermiteP [uRick Parent3u21.0 pi 2.0 2.0 1.0 3.0 3.0 2.0 1.0 p i 1 u 1 0.00 .01.00.0 pi ' 0 .00.00.0 pi 1 1.0 1 ' ]Computer Animation
Cubic BezierP [u3u23.0 3.0 1 .0 3.0 6.0 3.0u 1 3 .0 3 .00.0 0.00.0 1 .0]1.0 pi 0.0 pi 1 0.0 pi 2 0.0 pi 3 3 Interior control points playthe same role as the tangentsof the Hermite formulationRick ParentComputer Animation
Blended Parabolas/Catmull-RomParabolas/Catmull Rom*P [u3u2 0.5 1.5 1.5 0.5 pi 1 1 p 2.52 0.5i u 1 0.500.50 pi 1 100 pi 2 0 2 ]* End conditions are handled differentlyRick ParentComputer Animation
Controllingg Motionalong p P(u)Stepp 2. Reparameterizationpbyy arc lengthgu U(s)where s is distance along the curveStep 3. Speed controlfor example, ease-in / ease-outs ease(t)where t is timeRick ParentComputer Animation
Reparameterizing by Arc LengthAnalyticForward differencingSupersamplingAdaptive approachNumericallyAdaptive GaussianRick ParentComputer Animation
Reparameterizingpg byyArc Length - analyticP (u ) au 3 bu 2 cu du2s dP / duu1dudP / du (dx(u ) / du dy (u ) / du dz (u ) / du )dP / du (dx(u ) / du ) (dy (u ) / du ) (dx(u ) / du )222Can’t alwaysy be solved analyticallyyy for our curvesRick ParentComputer Animation
ReparameterizingRt i i bby AArcLength - supersample1.Calculate a bunch of points at small increments in u2.Compute summed linear distances as approximation to arclength3.Build table of (parametric value, arc length) pairsNotes1.Often useful to normalize total distance to 1.02.Often useful to normalize parametric value formulti-segment curve to 1.0Rick ParentComputer Animation
Buildt bl oftablefapprox.lengthsRick Parenti dindexu00 000.00ArcALength0 0000.00010.050.08020.100.15030.150.230.201 001.001 0001.000Computer Animation
Adaptive ApproachHow fine to sample?Compare successiveapproximationsppand seeif they agree within sometoleranceTest can fail – subdivide topredefined level, then start testingRick ParentComputer Animation
Reparameterizingpg byy ArcLength - quadrature 1 1f (u )du wi f (ui )iP(u ) au 3 bu 2 cu d 1 1Au Bu Cu Du E432Lookup tables of weights and parametric valuesCan also take adaptive approach hereRick ParentComputer Animation
Reparameterizing by Arc LengthAnalyticForward differencingSupersamplingAdaptive approachNumericallyAdaptive GaussianSufficient for many problemsRick ParentComputer Animation
SSpeedd CControlt ldistanceTime-distance functionEase-inEaseinCubic polynomialSinusoidal segmentSegmented sinusoidalConstant accelerationGeneral distance-time functionsRick ParenttimeComputer Animation
Time Distance FunctionSss S(t)tRick ParentComputer Animation
Ease in/Ease out FunctionEase-in/Ease-outsS1.0s S(t)0.00.0101.0tNormalize distance and time to 1.0 to facilitate reuseRick ParentComputer Animation
EEase-in:i SiSinusoidalid ls ease(t ) (sin(tπ π / 2 ) 1) / 2Rick ParentComputer Animation
Ease-in:Easn Piecewisec w s SinusoidalS nuso aRick ParentComputer Animation
Ease-in:Easn Piecewisec w s SinusoidalS nuso atπ π(k1 (sin( )) / fπ2k1 22ease(t ) t k1k1k1( t k1) / fπ /2k12π (t k 2 )( k 2 k1 (1 k 2 ) sin()) / fπ /2π2(1 k 2 )wherehf k12π k 2 k1 (1 k 2 ) t k 2k2 t2πP id linearProvidesli(constant(t t velocity)l it ) middleiddl segmenttRick ParentComputer Animation
EEase-in:i SingleSi l CCubicbis ease(t ) 2t 3t3Rick Parent2Computer Animation
EEase-in:i CConstantt t AccelerationAltiRick ParentComputer Animation
EEase-in:i CConstantt t AccelerationAltiRick ParentComputer Animation
EEase-in:i CConstantt t AccelerationAltiRick ParentComputer Animation
EEase-in:i CConstantt t AccelerationAltiRick ParentComputer Animation
Constant Accelerationt2d v02t1t1d v0 v0 (t t1 )2t1(t t 2 )d v0 v0 (t 2 t1 ) v0 (1 )(t t 2 )22(1 t 2 )Rick Parent0.0 t t1t1 t t 2t 2 t 1.0Computer Animation
Motivation – solution steps11. ConstructC t t a space curve ththattinterpolates the given points withpiecewise first order continuity2. Construct an arc-length-parametricvaluel functionfti forf theth curve33. Construct timetime-arc-lengtharc length functionaccording to given constraintsp P(u)u U(s)uU(s)ss S(t)S(t)p P(U(S(t)))Rick ParentComputer Animation
Arbitrary Speed ControlA i tAnimatorscan workk iin:Distance-time space curvesVelocity-time space curvesAcceleration-time space curvesS t tiSettime-distancedi tconstraintst i tetc.Rick ParentComputer Animation
Curve fittingg to distance-time ppairsRick ParentComputer Animation
WorkingWki withithtime-distancecurvesRick ParentComputer Animation
Interpolating distance-timedistance time pairsRick ParentComputer Animation
Frenet Frame – control orientationRick ParentComputer Animation
Frenet Frametangent & curvature vectorRick ParentComputer Animation
Frenet Frametangent & curvature vectorP(u ) UMBP' (u ) P' ' (u ) [U uRick Parent3u2]u 1Computer Animation
Frenet Frametangent & curvature vectorP(u ) UMBP' (u ) U ' MBP' ' (u ) U ' ' MB[U ' [3uU u3u22]u 12u 1 0U ' ' [6u 2 0 0]Rick Parent]Computer Animation
Fr n t FramFrenetFramelocal coordinate system Directly control orientation ofobject/camera Use for direction and bankinto turn, especially forground-planar curves (e.g.roads)Rick Parent v is perpendicular to w if curveis parameterized by arclength;otherwise probably notperpendicular For general curve mustv wxuComputer Animation
Frenet Frame - undefinedRick ParentComputer Animation
Frenet Frame - discontinuityRick ParentComputer Animation
Other ways to control orientationUse auxiliary curve to define direction or up vectorUse point P(s ds) for directionRick ParentComputer Animation
Direction & Up vectorv uxwwu w x y-axisTo keep ‘headhead up’up , use y-axisto compute over and upvectors perpendicular todi ti vectordirectiontIf up vectort supplied,li d usethat instead of y-axisDirection vectorRick ParentComputer Animation
Orientation interpolationPreliminary note:1. Remember that Rot q (v) Rotkq (v)2 Affects of scale are divided out by the inverse2.appearing in quaternion rotation3.When interpolating quaternions, use UNIT quaternions– otherwisethi magnitudesit d can interferei t fwithith spacingi offresults of interpolationRick ParentComputer Animation
Orientation interpolationQuaternions can be interpolated to produce in-betweenorientations:i t tiq (1 k )q1 kq22 problems analogous to issues when interpolatingpositions:1. How to take equi-distantequi distant steps along orientationpath?2. How to pass through orientations smoothly (1storder continuous)3. And another particular to quaternions: with dualuniti quaternioni representations,iwhichhi h to use?Rick ParentComputer Animation
DualrepresentationRot q (v) Rot kq (v)Dual unit quaternionrepresentationsFor Interpolation between q1 and q2, compute cosine betweenq1 and q2 and between q1 and –q2;q2; choose smallest angleRick ParentComputer Animation
Interpolating quaternionsUnit quaternions form set of points on 4D sphereLinearly interpolating unit quaternions: not equally spacedRick ParentComputer Animation
Interpolating quaternions ingreatt arc equall spacingiRick ParentComputer Animation
Interpolating quaternionswith equal spacingsin(1 u )θsin uθslerp(q1 , q2 , u ) q1 q2sin θsin θwhereq1 q2 cos θ‘slerp’, sphereical linear interpolation is a function of the beginning quaternion orientation, q1 the ending quaternion orientation, q2 the interpolant, uRick ParentComputer Animation
Smooth Orientation interpolationUse quaternionsInterpolate along great arc (in 4-space) using cubic Bezier onsphere1 Select1.Srepresentationi to use fromfduals2. Construct interior control points for cubic Bezierj construction of cubic Bezier3. use DeCastelajueRick ParentComputer Animation
SSmoothth quaternionti iinterpolationtl tiSimilar to first order continuitydesires with positionalinterpolationHow to smoothly interpolatethrough orientations q1, q2,q3, qnBezier interpolation – geometricconstructionRick ParentComputer Animation
B i iinterpolationBeziertl tiRick ParentComputer Animation
Construct interiorcontrol pointsB i iinterpolationBeziertl titnbnpnpnpn-1anpn 2pnn-11anpn 1pn 2pn 1pnpn-1anpn 2pn 1bn 1an 1p1tn 1Rick Parenta0p0p2Computer Animation
Q tQuaternioni operatorstbisect(q1, q2)q2qbSimilar to forming a vectorbetween 2 ppoints,, form therotation between 2 orientationsdouble(q1, q2)Given 2 orientations, form resultoff applyingl i rotationt ti betweenb tthethtwo to 2nd orientationRick Parentq1q2q1qdComputer Animation
Quaternion operators:Qpdouble( p, q ) rGiven p and q, form r‘Double’ where qq’ is the midorientation between p and the yetto-be-determined rIf p and q are unit quaternions,Then q’ cos(θ)q and cos(θ) pqq’p qθθq ' cos((θ )q ( p q )qdouble( p, q ) r q ' (q ' p ) 2( p q )q pbisect ( p, r ) qBisect 2 orientations:if p and r are unit lengthRick ParentGiven p and r, form qbisect ( p, r ) p r qp rComputer Animationr
B i iinterpolationBeziertl tiNeed quaternion-friendly operatorsto form interior control pointsRick ParentComputer Animation
B i iinterpolationBeziertl titnan bisect (double( pn 1 , pn ), pn 1 )pnpn-1Construct interiorcontrol pointsanpn 2bnpnpn 1bn double(an , qn )pn-1anpn 2pn 1pnpn-11anpn 2pn 1bn 1an 1Bezier segment:qn, an, bn 1, qn 1tn 1Rick ParentComputer Animation
Bezierz r constructconstructionon usingus ngquaternion operatorsNeed quaternion-friendly operations to interpolatecubic Bezier curve using ‘quaternion’ pointsde Casteljau geometric construction algorithmRick ParentComputer Animation
Bezierz r constructconstructionon usingus ngquaternion operators For p(1/3)t1 slerp(qn, an,1/3)t2 slerp(an, bn 1,1/3)t3 slerp(bn 1, qn 1,1/3)1/3)Rick Parentt12 slerp(t1, t2,1/3)t23 slerp(t12, t23,1/3)q slerp(t12, t23,1/3)Computer Animation
Working with pathsSmoothing a pathDetermining a path along a surfaceFinding downhill directionRick ParentComputer Animation
Smoothing dataRick ParentComputer Animation
Smoothing dataRick ParentComputer Animation
Smoothing dataRick ParentComputer Animation
Smoothing dataRick ParentComputer Animation
Smoothing dataRick ParentComputer Animation
Smoothing dataRick ParentComputer Animation
Smoothing dataRick ParentComputer Animation
Smoothing dataRick ParentComputer Animation
Smoothing dataRick ParentComputer Animation
Smoothing dataRick ParentComputer Animation
Smoothing dataRick ParentComputer Animation
SmoothinghdataRick ParentComputer Animation
Pathh findingfRick ParentComputer Animation
Pathh findingf- downhillh llRick ParentComputer Animation
CtAitiComputer Animation Algorithms and TechniquesAlgorithms and Techniques Interpolating ValuesInterpolating Values Rick Parent Computer Animation. Animation . Rick Parent Computer Animation. Orientation interpolation Quaternions can be interpolated to produce in-between
1. Traditional Animation - Cel Animation or hand drawn Animation 2. Stop Motion Animation – Puppet Animation, Clay Animation, Cut-out Animation, Silhouette Animation, Model Animation, Object Animation etc. 3. Computer Animation – 2D Animation, 3D Animation Unit-2: The 12 basic
Here you'll use the Create Time Layer Animation dialog box to create a time layer animation in the display, using a feature class layer as input. 1. If the Animation toolbar isn't present, click View, Point to Toolbars and click Animation. 2. Click Animation and click Create Time Layer Animation.
gamedesigninitiative at cornell university the Animation Basics: The FilmStrip 2 2D Animation Animation is a sequence of hand-drawn frames Smoothly displays action when change quickly Also called flipbook animation Arrange animation in a sprite sheet (one texture) Software chooses which frame to use at any time So programmer is actually the one doing animation
3D character animation teaches students the basic principles of char- acter animation and applies them to their own 3D work. Projects will let students to review and reinforce skills learned in pre-request courses, which includes 3D Animation software and animation workflow. In this course students will learn the essential principles of animation.
4.1 Action design in 2D animation Because of its plane characteristics, two-dimensional(2D), animation can often use more exaggeration than three-dimensional(3D) animation. The exaggeration of character modelling in two-dimensional(2D) animation has evolved from imitating real characters and animals for a long time.
an interest in animation techniques such as hand drawn or stop-frame, and use of design software such as Photoshop or more advanced 3D modelling for Animation (VFX). Include character animation in any technique where possible. 3D modeling is particularly relevant for Animation (VFX). Creature designs are encouraged, particularly for Animation .
Second Animation Press the button to create a new animation in Blender Name the animation "Standing" and press the shield icon Delete the existing keyframes (A, X, Delete Keyframes) Ensure that Standing animation is selected Pose Clear Transform All Create animation as previous. Add head bob in middle
business cases, using the Five Case Model – in a scalable and proportionate way. It recognises and aligns with other best practice in procurement and the delivery of programmes and projects. Experience has demonstrated that when this guidance is embedded in public sector organisations, better more effective and efficient spending decisions and implementation plans are produced. At the same .