The powerful inverse kinematics (IK) solver in Autodesk® HumanIK® middleware alters existing forward-kinematics animations so they are better synchronized with the current state of the character and game. The middleware gives developers the potential to create complex character animation on the fly—by simply translating and rotating Effectors (target points) and changing their customizable parameters.
HumanIK delivers solutions based on “full-body” inverse kinematics solving. This means that the entire body contributes to the placing of joints: rotation as well as translation. The result is mechanically correct movement of the whole body, created at runtime, that appears natural to the viewer.
Implementations of HumanIK software’s solvers use a lower level of detail (LOD), offering faster solving and reduced central processing unit (CPU) consumption.
Users can set limits on the rotation of each node in their HumanIK character around each axis, restricting the range of movement of a character’s joints.
The HumanIK floor contact engine helps to adjust a character’s feet and hands to the surfaces of oriented planes, such as ramps and walls, as well as flat floors.
HumanIK supports characters with elbows and knees that bend backward, such as birds.
Users can set the maximum angle of extension for a character’s knees and elbows to values up to 180 degrees.
Animation retargeting enables game developers to alter clips on the fly, helping to fit them to characters of different scale and proportion. It streamlines the animation pipeline by reducing the number of preset forward kinematics clips that animators need to create and keep up to date.
Squash ’n’ Stretch increases the realism of the poses generated by the retargeting solver by preserving the angular configurations of a character’s arms and legs.
When a character’s left or right ankle is rotated, the HumanIK inverse kinematics solver now automatically updates the rotation applied to the character’s knee to make the knee follow the orientation of the character’s foot.
HumanIK is a highly modular, multithreaded C++ library optimized for:
HumanIK works with third-party solvers and middleware components, such as physics and simulation engines.
A verbose library is available for Windows platforms.
The User’s Guide contains virtually everything developers need to get started with HumanIK, integrate it with their game, and take advantage of its most advanced features. The HumanIK User's Guide provides a basic overview of the architecture and design of the HumanIK software developer kit (SDK), and a step-by-step guide gives an overview on using the available functions and classes.
HumanIK provides sample implementations, including:
HumanIK provides a simple, concrete set of examples, integrated with the Trinigy Vision™ game engine, demonstrating how to carry out inverse kinematics and retargeting.