Motion Capture Re-targeting
You can take existing Motion Capture data from the Biovision Hierarchy (BVH) character animation file format and use it to retarget its animation onto your existing character rig. This process is called Motion Capture Re-targeting and is a powerful feature that is available in Creature3D.
Setting up your rig
First, make sure your character rig is somewhat or mostly similar to the rig defined in the BVH file you want to perform the re-targeting. This means the bone hierarchy and placement of the bones should be similar. You can also just directly import the rig from the BVH file and use it as your character rig for a 1 to 1 mapping. To do this, go into the Rig mode and use the BVH Rig as your character rig:
It is recommended that you have similar named bones in your character rig, doing so will allow Creature3D later on to automatically bind the source character bones to the target BVH animation bones.
Creating the Mocap Animation Object
Go into Animate mode and import in your BVH animation asset:
Select your BVH file and assuming it is valid, a new Mocap object will be created and show up in the Scene Browser.
Tweaking the Mocap Animation Object settings
If you play the animation in Animate mode, you should see the mocap skeletal character do its thing and perform whatever animation is in the BVH file. You can now tweak settings on the Mocap object by selecting it in the Scene Browser:
- Filename : Allows you to switch mocap animation asset(s)
- Start/End : Sets the start and end animation frames to re-target for motion capture
- Auto Name : This will automatically search and bind character joints/bones with similar names to any potential mocap animation bones
- Auto Scale : Automatically scale the mocap skeleton to a similar size as your character's skeleton
- Auto Align : Automatically align the mocap skeleton to a similar position as your character's position
Each joint in the Mocap object is then listed out, with properties:
Move Scale : A factor from 0 - 1 defining how much to reduce/amplify the translational motion of the motion capture asset in (X,Y,Z) dimensions Rotate Scale : A factor from 0 - 1 defining how much to reduce/amplify the rotational motion of the motion capture asset in (X,Y,Z) dimensions Angle Offset : Angles in degrees to offset the rotational motion of the motion capture asset in (X,Y,Z) dimensions Run Mocap : This is the rocket icon which will run the Motion Capture Re-targeting Show Bone Bindings : This is the eye icon which will highlight which bone in the mocap skeleton is bound/targeting the corresponding bone in the character rig ( if any )
Setting which bone to target for Mocap
The Mocap object also has as its main property the name/potential name of any character joint/bone it is targeting. You can set this by clicking on the button next to the name of the Mocap joint/bone. If it is empty, it means it is not targeting any character joint/bone.
Steps to get Motion Capture Re-targeting running
- Import/Create Mocap object
- Select Mocap object in Scene Browser
- Start matching up the joints/bones of each Mocap joint you care about to any potential character joint/bone. Leave this empty if you do not want to re-target the current Mocap joint/bone. If you have named your bones in your character the same as that of the Mocap skeleton, then just click on Auto Name to automatically perform the target binding.
- Tweak the Move Scale, Rotate Scale, Angle Offset if desired. A tip to get the character moving in place is to set the Move Scale to (0, 1, 0) for the root bone of the Mocap skeleton.
- Scale and Align the Mocap skeleton with the character's skeleton. You can use Auto Scale and Auto Align to help you out here.
- Perform the motion capture re-targeting by clicking on the Rocket icon on any of the listed Mocap joints/bones.
Results of Motion Capture Re-targeting
To make sure the rotations/translations of your Mocap asset are properly targeted/replicated, the QuatK Motors ( Quaternion Motor ) are created for every bone that has been re-targeted:
Tweaking quaternions might not be the most intuitive thing in the world for most animators; so the recommended way is to use the helper buttons for each QuatK Motor to set the Pitch/Yaw/Roll. By clicking on these buttons, you can directly keyframe/change the angles of your re-targeted character joints much more easily.
Of course, you can always convert the QuatK Motors back into FK Motors for direct more intuitive tweaking via the Convert to FK function, available for all motors. Having said that, take note that due to the inherent limitations of euler rotations, not all motion can be properly converted over from a QuatK Motor to a FK Motor.