Unity - Final IK v2.0
This post was published 5 years ago. Download links are most likely obsolete. If that's the case, try asking the uploader to re-upload.

Requirement: Unity 2017.4.28 or higher | File size: 47.2 MB
The final Inverse Kinematics solution for Unity.
What does it contain?
- VRIK
- Baker
- Full Body Biped IK
- Biped IK
- CCD IK
- Multi-effector FABRIK
- Look-At IK
- Aim IK
- Arm IK
- Leg IK
- Limb IK
- Rotation Limits
- Grounder
- Interaction System
- CCDIKJ, AimIKJ - Multithreaded solvers based on AnimationJobs
- + 62 Demo scenes with example scripts for all components
Technical Overview
- Works with Humanoid, Generic and Legacy rigs
- Tested on Standalone, WebGL, IOS, Android and all VR platforms including Oculus Quest
- Full source code included
- Custom undoable inspectors and scene view handles for each component
- Warning system to safeguard from null references and invalid setups
- Optimized for great performance
- Modular, easily extendable. Compose your own custom character rigs
- HTML documentation, fully commented code and tooltipped components
- Tested on a wide range of characters
NEW
Upgrade Guide
- MAKE A BACKUP! Open a new scene, delete “Plugins/RootMotion” and reimport. Also reimport PuppetMaster if you had that in your project.
- If you were using any of the integration packages, reimport them from “Plugins/RootMotion/FinalIK/_Integration”.
- TwistRelaxer.cs was restructured to support multiple relaxers on the same body part and TwistRelaxer components need to be set up again, sorry for the inconvenience! Find the TiwstRelaxer, add in one or more TwistSolvers, assign the Transforms, set weight to 1 and “Parent Child Crossfade” to 0.5 to get the previous default behaviour. If you wish to use multiple solvers, add them into the array in inverse hierarchical order - children first.
Improvements
- Added VRIKCalibrator.CalibrateHead() and CalibrateHands() to make it easier to calibrate avatars with arbitrary bone orientations.
- Added VRIKCalibrationBasic.cs and “VRIK (Simple Head & Hands Calibration)” demo to show an easier way to calibrate VRIK for the most common head & hands VR case.
- Added support for additional AimIK pass for the head to FPSAiming.cs to support look-at while aimWeight less than 1.
- Added default pose and Start/Stop Solver buttons to EditorIK, improving it’s reliability and usability. Fixed EditorIK not working with LookAtIK.
- Added letting go with one hand functionality to PickUp2Handed.cs (InteractionSystem).
- TwistRelaxer.cs was restructured to support multiple relaxers on the same body part. See Upgrade Guide for more information.
- Added VRIK PUN demo (_Integration folder).
- Added VRIK PUN2 demo (_Integration folder).
- Added GetYaw(), GetPitch() and GetBank() methods to V3Tools.cs and QuaTools.cs.
- Added “Smooth Damp Time” to AimController.cs. This can be used as an alternative target direction interpolation method (disabled by default) to interpolate yaw, pitch and magnitude separately instead of spherical interpolation that can cause unwanted results sometimes.
- Added “Max Body Y Offset” to VRIK Locomotion settings. Reducing this value reduces head bob from locomotion.
- Updated SteamVR integration package to v2.6.1.
- Added “Three DOF” rotation mode to InteractionTarget to allow objects to be picked up from any angle.
- Added the “scale” parameter to VRIK to make it work consistently with small or large scale characters.
- Added VRIK.solver.locomotion.Relax() to force VRIK to take two footsteps to realign to a more neutral position when standing.
- Added CCDBendGoal.cs. Add this to a GameObject you wish CCD to bend towards.
Fixes
- Fixed a bug with Grounding.lowerPelvisWeight in some cases lifting the pelvis and liftPelvisWeight lowering it.
- Fixed Baker IK position/rotation baking for Animators that have parent gameobjects.
- Fixed Baker not updating clip length when overwriting a file.
- Fixed GrounderBipedIK spine rolling when Animator was disabled.
- Added QueryTriggerInteraction.Ignore to all Grounder raycasts.
- Fixed VS warnings about redundant SerializeField attributes.
- Fixed InteractionObject.cs not using CompareTag.
- Fixed hands lagging behind when a moving player picked up an object with the Interaction System.
- Fixed VRIK not rotating the pelvis correctly when Pelvis Target set and Pelvis Rotation Weight set to 1.
- Simplified and optimized RotationLimitHinge calculations.
- Fixed InteractionEffector NullReferenceException when using Enter Play Mode Options.
- Fixed Grounding.isGrounded always returning true. Fixed GrounderIK rotating the root while not grounded.
- Fixed FingerRig solution dependence on hand rotation.
- Fixed VRIK rotating the upper arm bone even if arm Position/Rotation Weight is 0.
Homepage
Quick check before we show the links
Helps us keep automated scrapers from hammering the filehosts.