Character Animation CSE 191A: Seminar on Video Game Programming Lecture 5: Character Animation UCSD, Spring, 2003 Instructor: Steve Rotenberg.

Slides:



Advertisements
Similar presentations
Animation in Video Games presented by Jason Gregory
Advertisements

COMP Robotics: An Introduction
Blending & State Machines CSE169: Computer Animation Instructor: Steve Rotenberg UCSD, Winter 2005.
Animation Following “Advanced Animation and Rendering Techniques” (chapter 15+16) By Agata Przybyszewska.
3D Graphics for Game Programming (J. Han) Chapter XI Character Animation.
Forward and Inverse Kinematics CSE 3541 Matt Boggus.
Linear Blend Skinning.
Lecture 2: linear algebra, animation basics
Skeletons CSE169: Computer Animation Instructor: Steve Rotenberg UCSD, Winter 2005.
Character Setup Character Setup is the process of creating handles and controls for anything that a character animator will need to adjust in order to.
Chapter 4: IMD Chapter 4: Character Animation Character Animation 1 Lecturer: Norhayati Mohd Amin.
1Notes  Questions?  Assignment 1 should be ready soon (will post to newsgroup as soon as it’s out)
CSCE 641: Forward kinematics and inverse kinematics Jinxiang Chai.
1Notes  Handing assignment 0 back (at the front of the room)  Read the newsgroup!  Planning to put 16mm films on the web soon (possibly tomorrow)
Skin CSE169: Computer Animation Instructor: Steve Rotenberg UCSD, Winter 2005.
Review CSE169: Computer Animation Instructor: Steve Rotenberg UCSD, Winter 2005.
CSCE 641: Forward kinematics and inverse kinematics Jinxiang Chai.
Advanced Skinning CSE169: Computer Animation Instructor: Steve Rotenberg UCSD, Winter 2004.
Advanced Computer Graphics (Fall 2010) CS 283, Lecture 20: Inverse Kinematics Ravi Ramamoorthi Most slides courtesy.
Foundations of Computer Graphics (Spring 2010) CS 184, Lecture 25: Inverse Kinematics Many slides courtesy James O’Brien.
1cs426-winter-2008 Notes  Collision notes part 1 (primitive operations) should be up on the weekend.
Kinematics. ILE5030 Computer Animation and Special Effects2 Kinematics The branch of mechanics concerned with the motions of objects without regard to.
CSCE 689: Forward Kinematics and Inverse Kinematics
Animation. Outline  Key frame animation  Hierarchical animation  Inverse kinematics.
Midterm Review CSE169: Computer Animation Instructor: Steve Rotenberg UCSD, Winter 2004.
Advanced Skin CSE169: Computer Animation Instructor: Steve Rotenberg UCSD, Winter 2005.
Procedural Animation CSE169: Computer Animation Instructor: Steve Rotenberg UCSD, Winter 2004.
Inverse Kinematics (part 1) CSE169: Computer Animation Instructor: Steve Rotenberg UCSD, Winter 2005.
1cs426-winter-2008 Notes  SIGGRAPH crunch time - my apologies :-)
Week 4 Lecture 3: Character Animation Based on Interactive Computer Graphics (Angel) - Chapter 10 1 Angel: Interactive Computer Graphics 5E © Addison-Wesley.
CSE 473 Dr. Charles B. Owen Fundamentals of 3D Game Development1 Skeletons and Skinning Bones and Skeletons Mesh Skinning.
Animation CMSC 435/634. Keyframe Animation From hand drawn animation – Lead animator draws poses at key frames – Inbetweener draws frames between keys.
Algirdas Beinaravičius Gediminas Mazrimas.  Introduction  Motion capture and motion data  Used techniques  Animating human body  Problems.
Algirdas Beinaravičius Gediminas Mazrimas.  Introduction  Motion capture and motion data  Used techniques  Animating human body  Problems  Conclusion.
Feature-length films: Games: Desktop Animations: Computer Animation.
Chapter 5.2 Character Animation. CS Overview Fundamental Concepts Animation Storage Playing Animations Blending Animations Motion Extraction Mesh.
Computer Animation Rick Parent Computer Animation Algorithms and Techniques Kinematic Linkages.
Computer Graphics Group Tobias Weyand Mesh-Based Inverse Kinematics Sumner et al 2005 presented by Tobias Weyand.
Computing & Information Sciences Kansas State University CIS 536/636 Introduction to Computer Graphics Lecture 22 of 41 William H. Hsu Department of Computing.
CSE 872 Dr. Charles B. Owen Advanced Computer Graphics1 Skeletons and Skinning Bones and Skeletons Mesh Skinning Chapter 17 in the textbook.
Simulation and Animation
CSC418 Computer Graphics n Animation Principles n Keyframe Animation.
Character Animation for Realtime Applications Michael Putz Klaus Hufnagl Institute of Computer Graphics Graz University of Technology Austria.
Character Animation. Contents Keyframe animation Mocap Smooth skin by vertex blending Rigging & retargeting Gait analysis (Ragdoll physics) Fall
Algirdas Beinaravičius Gediminas Mazrimas.  Introduction  Motion capture and motion data  Used techniques  Animating human body  Problems  Conclusion.
CSCE 441: Computer Graphics Forward/Inverse kinematics Jinxiang Chai.
Multimedia System and Networking UTD Slide- 1 University of Texas at Dallas B. Prabhakaran Rigging.
CS-378: Game Technology Lecture #13: Animation Prof. Okan Arikan University of Texas, Austin Thanks to James O’Brien, Steve Chenney, Zoran Popovic, Jessica.
Algirdas Beinaravičius Gediminas Mazrimas.  Introduction  Motion capture and motion data  Used techniques  Animating human body  Problems  Conclusion.
Character Setup In addition to rigging for character models, rigging artists are also responsible for setting up animation controls for anything that is.
1cs426-winter-2008 Notes  Will add references to splines on web page.
CS 450: COMPUTER GRAPHICS ANIMATION SPRING 2015 DR. MICHAEL J. REALE.
Skeletal Animation and Skinning A (hardware friendly) software approach By: Brandon Furtwangler.
1cs426-winter-2008 Notes. 2 Kinematics  The study of how things move  Usually boils down to describing the motion of articulated rigid figures Things.
CSCE 441: Computer Graphics Forward/Inverse kinematics Jinxiang Chai.
Feature-length films: Games: Desktop Animations:.
2014 Animation Programming for Music Video Games Jessica Scott Harmonix Music Systems, Inc. October 10, 2014 #GHC
CGDD 4003 Character Animation. The Skeletal Hierarchy (aka the “rig”) Based on the concept of bones Each bone has exactly one parent Each bone has a transform.
CSCE 441: Computer Graphics Forward/Inverse kinematics
Character Animation Forward and Inverse Kinematics
Chapter 6.7 Animation.
Bones Skeletal Unity-2D How & When
Skeletons and Skinning
CSCE 441: Computer Graphics Forward/Inverse kinematics
Chapter XIII Character Animation
Computer Animation Algorithms and Techniques
Prepared by: Engr . Syed Atir Iftikhar
UMBC Graphics for Games
Computer Graphics Lecture 15.
Lecture 3. Virtual Worlds : Representation,Creation and Simulation ( II ) 고려대학교 그래픽스 연구실.
Presentation transcript:

Character Animation CSE 191A: Seminar on Video Game Programming Lecture 5: Character Animation UCSD, Spring, 2003 Instructor: Steve Rotenberg

Animation System Rigging Animation Procedural animation Dynamics

Rigging

Rigging refers to the construction and setup of an animatable character, similar to the idea of building a puppet A ‘rig’ has numerous degrees of freedom (DOFs) that can be used to control various properties

Skeletons Hierarchy of bones connected by joints Joints can provide any linear transform, but simple one degree of freedom (1-DOF) joints are very common. Joints take some number of DOFs as input and generate a joint local matrix M local as a result World space matrices are computed by a depth- first tree traversal process computing forward kinematics M world =M local ·M parent-world

Rotational Joints Principle axis (x) Arbitrary axis

Quaternions

Other Joint Types Translation Scale Single axis Multiple axis Volume preserving Compound joints Screw Path

Skinning Techniques Rigid parts Simple skin Blended skin Pose-space deformation Free-form deformations Skin & muscle simulation

Blended Skin Also called: skin, smooth skin, skeletal subspace deformation… Every vertex is attached to one or more matrices with a weight (weights must add up to 1.0)

Blended Skin

Pose-Space Deformation

Free Form Deformations Rectangular lattice deformations Arbitrary lattice deformations Axial deformations Surface deformations

Anatomy Layers Bone Muscle Fatty tissue Skin Hair Clothing

Facial Animation Shape interpolation Parametric blending Muscle simulation Wrinkles

Parametric Blending Start with a neutral or ‘base’ expression Create a deformed version of the base mesh for every individual facial parameter (note: you only need to store verts that are not in the base state)

Inverse Kinematics IK is a method of posing a skeleton where you specify the ‘goal’ of the ‘end effector’ and the algorithm computes the joint angles necessary to reach that goal Goals can be simple positions or can be position/orientations, or just orientations. They can also be specified in more elaborate ways if desired

Inverse Kinematics There are a variety of techniques for solving IK problems: Analytical Numerical Jacobian (inverse, pseudoinverse, transpose) Cyclic coordinate descent Damped least squares Nonlinear optimization

Rigging A DOF in the rig can be used to pose joint angles, blend targets, IK goals, graphical properties, or any other animatable parameter DOFs could also be used to control a group of parameters or can offer higher level control through the use of expressions (for example, one ‘DOF’ could open/close the entire hand) One character could have several rigs. One rig could control several characters… At its simplest, a rig is basically an array of floats and so it makes a nice clean interface between the animation layer and the rigging layer

Animation

Channels A ‘channel’ is a DOF value changing over time Usually, a channel is stored in some explicit representation: Keyframes Raw data Delta compression An ‘animation’ is a collection of channels that maps to a particular character A ‘frame’ represents the complete set of DOF values needed to pose a character for a particular instant Animations can be stored as an array of channels or as an array of frames.

Animation Players Play, pause, stop Adjust rate (faster, slower, backwards…) What to do at end? Loop Stop Hold on last frame Trigger some event…

Animation Blending DOF values and entire frames can be blended in arbitrary ways Multi-track blending Localized blending

State Machines States represent animations Transitions represent instantaneous events Transitions can be triggered by: End of animation Button press In-game event (collision…) Timers Whatever… State machines can be blended. Blenders can be controlled by state machines…

Animation Layer The end result of all of the animation playing, blending, and state machine manipulation is a ‘frame’ of DOF values that is used to pose the rig (hopefully, exactly one value for every DOF in the character) Remember, these DOF values can map to any animatable parameter in the character.

Procedural Animation Locomotion Dynamics Dynamic Control Procedural Animation Behavioral Animation

Locomotion Biped, quadruped, hexapod, arachnid (octapod), centipede… Digitate, palmate Quadruped gaits: Walk Canter, rack/pace, trot Gallops (rotary/tranverse, feline/equestrian) Hexapod gaits Back-to-front wave gait Tripod gait

Character Production Concept Design Model Texture Skeleton Skinning LODs Collision & gameplay setup Animation Audio

Conclusion

Preview of Next Week Play control Game design Gameplay & fun

Reading Assignment “Real Time Rendering”, Chapter 4

Animation References “Cyclopedia Anatomicae”, Feher “The Anatomy of Movement”, Calais- Germain “The Artist’s Complete Guide to Facial Expression”, Faigin “Animals in Motion”, Muybridge “Interactive Character Animation”, Rotenberg (2004)