Download presentation
Presentation is loading. Please wait.
Published byEdward Anthony Modified over 9 years ago
1
Character Animation for Realtime Applications Michael Putz Klaus Hufnagl Institute of Computer Graphics Graz University of Technology Austria
2
STRUCTURE OF THIS PRESENTATION 1. introduction 2. an old fashioned way of animation 3. example implementation 4. outlook to a new technique 5. example implementation 6. diskussion
3
THE OLD WAY … low polygon alien character mesh (~1200 polys) main character of a freeware game „STOKEDRIDER“ currently under developement by a group of students animated using keyframes and mesh interpolation (also called: vertex tweening)
4
LINEAR MESH INTERPOLATION artist models keyframes in 3D Software export keyframes (vertex & normal positions) runtime application generates missing interpolation- frames BUT NOW: let us take you where the action is..
5
free download at http://www.bongfish.com
6
CONSTRAINTS OF MESHINTERPOLATION + smooth animation + folding-seams eliminated (but only within a certain range) + fast - multiple copies of the mesh in memory (one for each key frame) - limit on the level of interactivity and realism - no dynamic animations at runtime
7
SOME STATISTICS STOKEDRIDER filesize: 7 MB keyframe meshes: #21 = 2.3mb ( = 32% of filesize) only 3 tricks animations, the rest is used for ground movement ( steering, switching direction etc.. )
8
WHAT DO WE EXPECT FROM OUR NEXT ANIMATION-SYSTEM ? unlimited trick combinations for the alien rider response to enviromental stuff (collisions with objects, different ground conditions) fluid and physically correct movement should be a realtime implementation nextgen hardware should be supported (vertex shaders)
9
THE NEW APPROACH 2 different animation systems! 1. OFFLINE ANIMATION (exported animation using a skeletal system and softskinning) 2. ONLINE ANIMATION (realtime deformation according to ingame physics)
10
SKELETAL ANIMATION vertices bound to hierachic bonestrukture quaternions used for „bones“ bone movement -> skin movement 1 matrix transformation -> many corresponding vertices + no need to store vertex positions for all the vertices for every frame of the animation + derive intermediate frames by using spherical interpolation + smooth transitions while changing from one animation to the other + the memory bandwidth is very small - „close to joints” deformations can result in creasing
11
SKINNING / SOFT-SKINNING rigid: each vertex corresponds with only one bone -> bulges soft: (multiple weights) drawback: computation overhead
12
OFFLINE ANIMATION premodelled in e.g. 3dsMax, Maya, Milkshape, … some IK physik & skeleton (like BIPED) use envelopes to set and correct weights generate animation-cycle (for the bones keyframes) exported filestructure consists of: mesh container (lokale matritzen) hierachichic bones (FrameTransformMatrix) skin (texture UV-coordinates) list of weights animations
13
ONLINE ANIMATION „arm shake“ animation for the alien-character both arms should shake according to riding speed physics-engine generates animation parallel to offline animation BUT HOW TO COMBINE BOTH SYSTEMS?
14
IMPLEMENTATION OF HANDSHAKING using the already existing bone-hierachy parsing code from offline animation wait for „shoulder bone“ than modify all bones below using sin/cos depending on riding speed = simple but effective without almost any cpu costs
15
ONLINE ANIMATION lots of other uses for physic based animation : Look-at constraints Secondary motion (Chest Heaves,breathing) Inverse Kinematics Muscle Bulges Ponytails, clothes, belly etc.
16
OUTLOOK more sophisticated online animations than sin/cos physic-based realtime IK using realtime terrain information => realistic crashes enhanced motion blending of the animations support of multichannel precalculated animations complexe Offline Animation of details
17
QUESTIONS ? for in-depth information about the implementation, please take a look at our paper or visit: http://www.bongfish.com/stokedrider
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.