Comprehensive Overview of Animation Techniques for Games

Slide Note
Embed
Share

Explore various animation techniques used in game development including skinning, rigid motion, jointed bodies, linear blend skinning, blend shapes, authoring animation, keyframe animation, interpolation methods, spline, and Bezier techniques. Understand the complexities and applications of these methods in creating realistic and dynamic game animations.


Uploaded on Sep 30, 2024 | 0 Views


Download Presentation

Please find below an Image/Link to download the presentation.

The content on the website is provided AS IS for your information and personal use only. It may not be sold, licensed, or shared on other websites without obtaining consent from the author. Download presentation by click this link. If you encounter any issues during the download, it is possible that the publisher has removed the file from their server.

E N D

Presentation Transcript


  1. Animation UMBC Graphics for Games

  2. Skinning

  3. Rigid motion Translation + Rotation Representable as matrix or new origin & orientation Apply to every vertex

  4. Jointed Bodies Rigid parts, each with translation & rotation Robots or mechanical objects Apply to every vertex of rigid part Chains of local transforms Hand motion result of arm & wrist Matrix form = composition of matrices

  5. Linear Blend Skinning Define jointed rigid skeleton Vertex positions are weighted blend of closest bones Bone = translation & rotation, not physical bone Add extra spur bones Muscle bulge Preserve elbow shape (don t round outside, don t fold inside) Avoid candy-wrapper twist Building bone rig + painting weights = rigging

  6. Blend Shapes Multiple pose meshes: same vertices different positions Linear blend between poses More storage, but more flexible Most common for faces

  7. Authoring Animation

  8. Keyframe Animation From hand drawn animation Lead animator draws poses at key frames Inbetweener draws frames between keys Computer animation Can have separate keys for different attributes Interpolate between values at key frames

  9. How to Interpolate Linear interpolation Value V0at time T0, V1at time T1 Fraction of the way from T0to T1 Lerp/mix equation

  10. Spline Set of polynomials 1 constraint per coefficient Positions Velocities Acceleration

  11. Bezier Spline All constraints from control points: Resulting equations:

  12. Bezier Basis Functions Computing position

  13. Bezier Basis Functions Group by ti: coefficients

  14. Bezier Basis Functions Group by pi: Basis Functions

  15. Bezier Basis Functions Cubic Bezier basis functions

  16. Catmull-Rom Spline Constraints Resulting equations:

  17. Catmull-Rom Basis Functions

  18. Automating Animation

  19. Forward Kinematics Given a set of joint angles, where s the hand? (or foot or head or ) End effector Just apply nested transforms

  20. Forward Kinematics Character is holding something in their right hand, want to shift it to the left hand Forward transform up tree Inverse transform back down Think of matrices as Opposite order for OpenGL

  21. Inverse Kinematics Find angles to match end effector position Few joints: system of equations Many joints: optimization Often with constraints (wrist doesn't bend that way) And heuristics Minimal change Load support Physical data

  22. Blending animations Animation overlays Just some joints, e.g. upper body for aiming Common to create animation loops for specific behavior Idle, walk, run, turn left, turn right Need to transition between these Speed up/slow down to match cadence, foot placements Linearly blend bone transforms Some games will cheat e.g. pop or unsynced blend during critical action, good blend on playbeck

  23. Motion Capture (mocap) Track markers on actor Infer transforms Markers are on surface, not on bones Not all markers visible every frame Often significant artistic cleanup

  24. Retargeting Apply animation from one character to another Simple: match skeletons More complex Consider changes in height, strength, weight Adjust speed and motion Most often used for mocap Human actor giant ogre

  25. Physics-based Animation Generally: simulating the laws of physics to predict motion Common applications: Fluids, gas (3D grids or particles) Cloth, hair (jointed mesh, may be coarse & interpolated) Rigid body motion (jointed bodies, rag doll physics) Model change as differential equations Solve numerically in small time steps Often don t run to convergence

  26. Autonomous Entities, Crowds, Groups NPC, enemy characters Usually simple techniques over learning methods Want to tune difficulty, AI should be challenging, but don t want it to beat you Create complex group behavior from simple individual behavior Flocks, crowds Particle systems Leverage techniques from AI & Robotics A* path finding over a navigation mesh (navmesh) State machines, decision trees

Related