Download presentation
Presentation is loading. Please wait.
Published byBriana Todd Modified over 9 years ago
1
1 Characters
2
2Introduction The Characters are the Actors of the Games. The Characters are the Actors of the Games. Three Types of Characters : Three Types of Characters : –Segmented –Mesh –Bone-skin Root-base Concept (P.128-129) Root-base Concept (P.128-129) Production : Production : –3D animation tools »3dsMax »Maya »Softimage »…»…»…»… –Motion capture (Mocap) »For motion data Base
3
3 A character is composed by a set of models with motion data to simulate a live creature in real world A character is composed by a set of models with motion data to simulate a live creature in real world P. 126-127 P. 126-127 Benefits Benefits –Hierarchical structure –Easy to implement in a scene tree Drawbacks Drawbacks –Segment-like A Segmented Character
4
4 Vertex animation on skins Vertex animation on skins –Animated positional data on skins –3D warping Benefits Benefits –Easy to implement –Flexible mesh in animation Drawbacks Drawbacks –No hierarchy –No keyframes –Massive dataset A Mesh Character
5
5 Bone-Skin Skeleton Bone-Skin Skeleton –Hierarchical bones –Skin deformation run-timely Benefits Benefits –Hierarchical structure –Not segmented look Drawbacks Drawbacks –More complicated than the other solutions –Skin deformation need more CPU cost than transformation only Bone A Skin Bone B A Bone-skin Character
6
6 Motion Data Euler Angles Euler Angles Angular Displacement Angular Displacement Quaternion Quaternion –Slerp But Finally They Will Be Converted into “Matrix” But Finally They Will Be Converted into “Matrix”
7
7 Optical Motion Capture Data Acquired Data Acquired –From skin to joint (Mocap) –From joint to skeleton (Post-processing) –From skeleton to skin (In-game) Device Device The Shooting Plan The Shooting Plan
8
8 Raw Data (Positional Data) Joint End Point Bio-Data Data Acquirement During the Mocap
9
9 Skeletons Skin Skeletons Bone-Skin Bone-skin Implementation In Game
10
10 Mocap Devices
11
11 Starting Out – Reviewing the Animation List and Flowchart Planning a Mocap Shoot
12
12
13
13 Creating a Shot List Create a Database File Names Preliminary Shot List A Data Record of Shot List
14
14 A Shoot List
15
15 Getting Ready for the Shoot When to Shoot ? Find a Studio Make Sure No Technical Blocks Casting Preparing a Shooting Schedule Organize the Shot List Daily Schedule Do You Need a Rehearsal Day ? Take Care of Your Performer
16
16 A Daily Schedule
17
17
18
18
19
19
20
20 Apply motion data on bones Apply motion data on bones Joint = pivot(p x,p y,p z ) in A A B (x,y,z, ,axis) ( ,axis) = [R B ][T B ][R A ][T A ] From pivot From position Motion for Characters
21
21 To Create More Animation from Limited Ones To Create More Animation from Limited Ones Run-time or Pre-processing Run-time or Pre-processing Issues : Issues : –Motion re-targeting »Run-time –Re-key-framing »Pre-processing –Interpolation »Run-time –Motion blending »Run-time Motion Editing
22
22 A Set of Frame Data to Describe the Character’s Motion A Set of Frame Data to Describe the Character’s Motion Walk, Run, Attack, … Walk, Run, Attack, … Keyframed or Non-keyframed Keyframed or Non-keyframed walkrunattackfallPoses
23
23 walk raw_start_frameraw_end_frame cut_frame Parameter { raw_start_frame raw_end_frame start_frame end_frame cut_frame play_speed length transition_mode } start_frameend_frame A Pose Definition Example
24
24 walk 048 Frame 5.3 1.If the motion data is in quaternion form 2.Get the motion data on frame 5 & 6 3.Convert the data into quaternion format 4.Apply slerp(5, 6, 0.3) to get the interpolation on frame 5.3 5.Convert the result of step 3 into a rotation matrix 6.Apply the matrix to the object for its transformation Play a Pose
25
25 Pose 1 Pose 2 cut_frame start_frame length Pose Connection
26
26 Motion blending in run-time Motion blending in run-time Quaternion is used Quaternion is used “Blend Tree” “Blend Tree” –Cross fade –Countinuous blending –Feather blending Pose Blending
27
27 Reference Reference –Game Developers Conference 2003 –Proceedings CD, Programming Track –“Animation Blending : Achieving Inverse Kinematics and More” –Jerry Edsall –Mech Warrior blend tree Fall Transition Forward Motion Fall Down Walk Run Blend Tree
28
28 Pose 1 Pose2 0 1 0 1 Cross Fade
29
29 Pose 1 Pose 2 0 1 0 1 Continuous Blending
30
30 左右搏擊 左右搏擊 Pose 1Pose 2 Pose 3 Feather Blending
31
31 Weights to Assign the Influences of the Deformation by Bones on Skin Vertices Weights to Assign the Influences of the Deformation by Bones on Skin Vertices –1-weight –2-weight –N-weight CPU cost CPU cost It’s Very Good for GPU to Perform the Calculation Using Vertex Shader on DirectX It’s Very Good for GPU to Perform the Calculation Using Vertex Shader on DirectX Skin Deformation
32
32 Bone A (root object) Bone B (Bone A’s child) base 1.Apply motion data to bones 2.Convert the vertex from “base” space to its associated bone’s space using the natural pose’s inverse transformation 3.Multiple the influence weight 4.Accumulate all influences 5.Then the vertex is deformed by the bone in “base” space
33
33 M b = R b T pivot M a = R a T position M vb = M nb -1 M b M a M va = M na -1 M a v in_base = v s *w a M va + v s *w b M vb A two-weight skin vertex example
34
34 Network Gaming
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.