Exploring Dynamic Character Motion Techniques for Games Development

3D character development is very important part in the character animation. Currently, animation researchers try to control their virtual character joint and make their character motion more realistic and look like real human movement. Using motion capture technology, input data for character movement can be manipulated. This paper presents a current motion research in the real time animation character and focused in dynamic motion control considering physic for game development. From this paper, the researcher can get better understanding what is the main issues and relevant technique that used by the recent researchers in this area. This review focuses on three main parts in dynamic motion generation with physics consideration and control: skeleton hierarchy and kinematics, motion capture data animation, and active dynamic control. Index Terms — Motion Capture, Realistic Motion Data, 3D Character Animation.


INTRODUCTION
Natural character movement is the main issue in 3D character animation area.The development involves character skeleton joints and bones that will simulate movement through virtual environment.Using 3D Software, animator will design the character and make a model optimization.After that, skeleton will be set up for character rigging.The main process is to edit input data for mapping into the character before produce the movement animation.Fig. 1 shows 3D character development process.Generally, the movement of a character in computer games is not smooth and realistic when compared with the movement of people resulting to the non-real-time animation as cartoons and movies.To achieve the realistic virtual character, a character should be adjusted so that a movement similar to humans in the real world.Analysis of actual human movement data can be applied to characters in real time using motion capture technology.One of the biggest challenges in interactive computer games industry is to produce a dynamic character movement and a reaction to the physical interaction.
Unlike real human, motions created by the animators are fixed.These motions are created to fit certain situations of motion and their connections are created.As a result, the character will be repeating the same motion in real time animation.Therefore, it looks impractical and the character Manuscript received on May 11, 2011 E-mail: ismahafezi@yahoo.com.cannot respond to physical interaction with other autonomous characters.Character in real time animation requires a combination of motions from different sources such as motion capture, manual keyframes, dynamic and kinematics simulation [1].A summary of this approach is illustrated in Fig. 2. Dynamic motion refers to the physical properties of 3D object, such as mass or inertia, and specifies how the external and internal forces interact with the object [2].With the dynamic of character data, the control of the character's specific motion: walking, running and jumping looks more realistic.Real-time characters consist of solid sections connect by joints.These sections and joints are known as a skeleton.Motion of the skeleton can be specified in terms of rotation and translation.The kinematic approach refers to virtual character properties such as position, orientation, and velocity.Forward kinematics approach directly controls the relative geometric transformation of each bone of the skeleton meanwhile Inverse Kinematics is about solution of geometric locations to a given point.
In this paper, we analysis the basics of hierarchy in producing dynamic motion control considering physic for real time animation character.This review will concentrate on skeleton hierarchy and kinematics, motion tracking data animation, and active dynamic control.

Exploring Dynamic Character Motion
Techniques for Games Development Generally, human movement development in computer games involves joints of 3D models controlled by the skeleton hierarchy.These joints have been combined with three-dimensional geometric models, such as polygonal mesh.
There are three main techniques commonly used to produce animation for the characters as shows in Fig. 3. Key-framing technique involves main frames for main character poses and in-between frames that used to transform the position, placing, or timing of an object.The animator will make character movement editing and interpolation at in-between frames and has direct control over the positions, shapes, and motions of character at any moment in the animation.The effect of changing a parameter value is often predictable in keyframing techniques.Meanwhile, procedural technique provides initial conditions and adjusts rather abstract physical parameters, such as forces and torques.The animator has to run a simulation in virtual environment to see the result of parameter value changing.The animator specifies physical rules and initial conditions to the character.The simulation calculation will be used kinematic or dynamic methods.
Currently, motion capture techniques have been used widely from video game animation to computer graphic effects in movies.An actor, are placed in a special suit containing sensors that record the motion to get the real human movement data.The motion data output is often far from perfect because need to clean up from keyframe animator to make it look more natural.The output data from motion capture technology shows more realistic, convincing and better character movement than other techniques [27].
In general, human character in real animation was represented by a skeleton.A skeleton is described by the arrangement of bones that have been linked by specific joints [4].A real time animation character has 16 rigid links and 23 main ball joints that can be manipulate and control as shown in Fig. e 4. The total number of degrees of freedom (DOF) of virtual character is 41 [5].3D character movement controlled using skeleton structure or hierarchy.Example of 3D character motion data hierarchy shows in Fig. 5.A hierarchy uses grouping or parenting concept.For example, of human leg, the hip is the parent of the upper leg.Meanwhile, the lower leg is the child the upper leg, and the foot is the child of the lower leg.In real time animation environment, each bone depends on the orientation and the joint with its parent [4].Generated motion has to enforce with physical law of motion for creating the realistic human character motion.
Meanwhile, the child body is defined as R 1 and 1 p  .When the parent body moves, the joint J 0 and J 1 change to the same coordinate place.To transform child body from local space into global space: To get the vector d  , we subtract o j  and 1 j  . The new body position, : The function of inverse kinematics and forward kinematics is to calculate the bone's position, including the joints position and angles [6].Normally, inverse kinematics is used for motions involving the lower part of a character's body such as joints from the foot to the pelvis [4,5,6].It is very hard to use forward kinematics because the body position will be moving below the surface or ground.This transaction makes the character's motion very unreliable and unconvincing.
In the case of shoulder rotation, or to get the position of the upper arm, we use forward kinematics calculation [6].Forward kinematics is a top-down technique rotation used to position the character's upper body part in real time animation.Each skeleton joint has its local transformation, and parent transformation will determine the global transformation of each skeleton joint.
n here represents the current joint in the hierarchy.In summary, forward kinematics can control the rotation of a skeleton.Single joints and the children joints will follow automatically when we rotate top level joints.On the other hand, inverse kinematics is useful when we need to move a single object to pose in the above direction of the skeleton hierarchy from the moving joint.

III. MOTION CAPTURE DATA ANIMATION
Motion capture technology has been used in many areas, including computer games character, character motion research and movie making.Using motion capture devices, a researcher can manipulate and track full body motion of the character in the virtual world.The purpose of motion tracking is to get a sample of frames that can replace the motions of real human in the virtual environment.Motion tracking records the position of each joint of the human skeleton [7].With the motion data, reliable character motions can be created in real time animation.Motion capture technologies are generally classified into active and passive sensor-based capture according to the nature of the sensor used [3,19].This sensor can mimic a real human movement, and the raw measurement data will be applied to the virtual character motion.
Editing and reuse of motion capture data have become a challenging task to the researcher.The early framework introduces optimal trajectory method [8] that solved dynamic constraint problem.A famous methodology for producing a natural character motion in real time animation is the space time optimization framework [9,10,20].We can edit or use motion capture data and keep physical properties at the same time using this method.Recently, there have been many studies on motion capture data editing and retrieval.One of them utilized fuzzy inference to create a personalized animation of virtual character [11,23].This method uses fuzzy rules to calculate motion capture data parameters.Algorithm for fuzzy rules is created from the results of subjective animated movement.New proportionality coefficients α and β was defined that are strongly correlated with subjective features of animation [11].A comparison of this approach is illustrated in Table 1.
To modify same motion capture data, dimension of the data needed to be reduced using principal component analysis (PCA), making a trained dictionary to get indexed motion data, and test the data using support vector machine (SVM).This method can reduce the retrieval time of motion capture data [12].PCA can reduce the dimensions of motion capture data, which is compressing and matching the input parameter [13].The outline of this method has two core parts: process of making dictionary and process of posing discrimination.From the input training data, the output training dictionary processed with SVM to get the retrieval data.A summary of input and output motion capture data for retrieval process is illustrated in Fig. 7.

Physic-based motion editing
These technique involved combination between motion capture data and dynamic simulation [9,14,15] to develop character motion while interact with virtual environment.The editing process using correction of the momentum and balance constraints.

Interpolationbased motion editing
Straightforward interpolation of joint angles [14] and blend motion sequences with various inverse kinematic [16].

Momentum-b ased motion editing
Optimize the algorithm from motion capture data to meet high-level user limitation [14] while protecting physical properties.

Avatar fuzzy inference
Algorithm for fuzzy rules has been created from results of subjective animated movement.New proportionality coefficients α and β was defined that are strongly correlated with subjective features of animation [11].

Interaction mesh
New approach for editing motions that involve close interactions such as dancing, fighting and other motions [17].
Motion tracking is the core part in character motion dynamic and control.Using motion data, a user can directly control and modify the character motion in real time animation.3D games character has a rigid body that has its own forces, velocity, mass and physical properties.The main step to control dynamic motion simulation is the basic dynamics of that character's movement.Using dynamic engine application such as havoc physic, massive and open dynamic engine (ODE), the physical realistic of real time animation has been upgraded to another level.This application can solve dynamic calculation [22,25,27], dynamic contact and friction for the rigid body dynamic.
Although physic properties can be applied to character motions in real time animation, however it is still limited when it comes to rigid objects.Active dynamic control can be achieved from any athlete motion [4] for example, cycling, fighting, running and swimming.A feedback control system [4,24] was used to process motion capture data.Human motions can be generated using physical simulation such as a robotic-derived controller based approach and performance optimization based approach [18].
A lot of researcher focuses on study of dynamic character as shows in Fig. 8. Related research about dynamic motion control:

Motion Control Based on Dynami
A lot of approaches have been developed for the purpose of character motion control based on dynamic.The example given, using a muscle strength model [21] for the inverse kinematics method.This method can calculate and change the motion speed and trajectory using the joints of skeleton [26].Another technique is creating motion using inverse kinematics method and produces a human walking motion using inverse dynamic [26].

Structure of dynamic motion control
In general, dynamic motion control must have two core parts: controller and simulator.The structure of the dynamic motion is shown in Fig. 9. Using controller function, we can calculate the angular joint acceleration directly by referring to the latest state of the motion capture data input.After that, the simulators update the process through dynamic character motion.The previous result from this structure is the output angular acceleration as the sum of Ӫ initial and the difference of the angular acceleration ∆Ӫ [26].Meanwhile, the results input based on combination of a human body model and external physical input for the controller and the simulator [26].The main challenge for character motion in real time animation is to make the character move automatically and instructed like real human.Multiple learned models and different control methods need to be explored for the purpose of getting a natural, balanced dynamic character motion while maintaining the character's physical properties [28,29].Editing and modifying techniques for motion capture animation data need to be maximized to the highest level to achieve realistic and convincing motions for virtual characters.

Fig. 2 .
Fig. 2. Sources for the character motion in real time animation

Fig. 7 .
Fig. 7. Summary of input and output of motion capture data

Fig. 8 .
Fig. 8. Research focus on dynamic motion character area