Animal Controller
📥 Integrations📑 Changelog✅Social
  • 🤝Welcome to Malbers Animations Assets
  • 🌐Discover all my Assets
  • 💫What's New
  • 🌀Upcoming assets
  • 📋Changelog
  • ↗️Upcoming Changelog
  • 🛣️Road Map
  • ✍️End User Licence Agreement
  • 🌟Features
  • Improve Performance Tricks
  • 😓Know Limitations so far
  • 📥Downloads
  • QuickStart
    • 📖Guide to use All Malbers Assets with (AC)
    • 🔼Upgrade to URP
    • 🔼Upgrade to HDRP
    • 💔Common Issues
    • 🔔Tips and Tricks
  • Guides and Tutorials
  • 📺YouTube Tutorials
    • 📺Video Tutorials (On Queue)
  • 📱Mobile Setup Guide
    • Mobile Joystick
  • 🧐How to: Animal Controller
    • 🔹Play a Mode while Moving
    • 🔹Create and configure a new mode
    • 🔊Adding Sound Effects
    • 🔹Rebone Mesh Tutorial (Skin Mesh is Missing)
    • 🔹Add Movement with Non RootMotion Animations
    • 🔹Fetch a ball
    • 🔹Set up Timeline
    • 🔹Make Animal flee when see the animal Player
    • 🔹Animal Controller for Humanoids
    • Create a Shootable Weapon From Scratch
    • ⚔️How to Fix weapons offset and values (Bow, Pistol)
    • ✨Add a Effect to the Effect Manager
    • 🕹️Connect Inputs to the Controller
    • Modify the controller with a Stat
    • Use the Modify Stat Component
    • 📡Use a MEvent and MEvent Listeners
    • 💎Change from Faceted to Smooth poly art Animals
    • ⁉️Listen when an Mode starts or ends
  • 🐎How to: Horse Animset Pro
    • 🐴Call the Mount
    • 🤠Change Meshes for the Rider
    • 🏇Make any animal mountable
  • 🕺Strafing
  • Main Components
    • 🐺MAnimal Controller
      • General
        • Pivots
      • Speeds
      • 🔷States
        • 🕴️Idle
        • 🏃‍♂️Locomotion
        • 🌠Fall
        • 🤾‍♀️Basic Jump
        • 🤾‍♂️Root Motion Jump
        • 🐟Swim
        • 🐊UnderWater
        • 🧗‍♂️Climb
        • 🧗‍♂️Ledge Grab
        • 🦅Fly
        • 🪂Glide
        • 🧗Wall Run
        • 🧗Wall Run Vertical
        • ⛷️Slide
        • ☠️Death
        • ☠️Death Ragdoll
        • 🆕Creating a new State
      • 🟩Modes
        • 🟩Mode Behavior
        • 🟩Mode Sequence
      • 🅾️Stances
      • Advanced
      • Animal Modifiers
      • Events
      • Debug
      • Animal Animator Behaviors
      • Methods and Properties
    • 🎮Malbers Input & MInput
      • Methods and Properties
    • 🤖AI
      • AI Animal Control
      • MWayPoint
      • Wander Area
      • AI Target
      • Animal Brain
        • AI States
        • Tasks
          • General - Chance
          • General - Empty
          • General - Invoke Event
          • General - Send Message
          • General - Play Audio
          • General - Quick Align
          • General - Reaction
          • General - Set Look At Aim
          • General - Set Stat
          • General - Wait
          • Animal - Set Speed
          • Animal - Play Mode
          • Animal - Set/Play State
          • Animal - Set Stance
          • Animal - Set Strafe
          • Movement - Move Stop
          • Movement - Patrol
          • Movement - Set Destination
          • Movement - Set Target
          • Variables - Set Var Listener
          • Weapons - Weapon Tasks
        • Decisions
          • General - AND
          • General - Check Stat
          • General - Compare Stats
          • General - Look
          • General - OR
          • General - Is Task Done?
          • General - Wait
          • Movement - Has Arrived
          • Movement - Check Target
          • Animal - Check Mode
          • Animal - Check Stance
          • Animal - Check State
          • Variables - Check Scriptable Variable
          • Variables - Check Transform Var
          • Variables - Check Var Listener
          • Runtime Set - Is Target in Runtime Set
      • 📌Point Click
    • 🧨Reactions
    • 📶Combo Manager
    • ⚔️Weapon Manager
      • 🛡️MWeapon [General] Properties
      • 🛡️MWeapon [Damage] Properties
      • 🛡️MWeapon [IK] Properties
      • ⚔️MMelee
      • 🔫MShooteable
      • 🏹Bow
    • 〰️Path Constraint
      • 〰️MPath
      • 〰️Path Link (Straight)
      • 〰️Path Link (Cinemachine Path)
      • 〰️Path Creator(Sebastian Lague)
    • Speed Ground Changer
  • Scriptable Architecture
    • 💠Scriptables
      • 🔹Bool Var
      • 🔹Int Var
      • 🔹Float Var
      • 🔹String Var
      • 🔹ValueToString
      • 🔢Variable Listeners & Comparers
      • 🔰IDs
      • 🎫Tags
      • 🪝Transform Hook
      • 📣MEvents
      • 📣MEvent Listener
      • 📦Runtime gameobjects
    • 🔤MLocal Variables
  • Secondary Components
    • ⚔️MDamager
      • 🐾MAttack Trigger
      • 🐾Attack Trigger Behavior
      • 🏉MProjectile
      • 🏹Projectile Thrower
      • 🤯MExplosion
    • 🤕MDamageable
    • 🧊Zones
      • Public Methods
    • ✊Pick Up - Drop
    • ✊Pickable
    • 🚩Respawner
    • 🚩Respawner NPC
    • 🚩Simple Respawner
    • 🏁CheckPoint
    • IK Manager
      • IK Processors
      • Weight Processors
  • Global Components
    • 🧡Stats
      • 🔸Stat Modifier
      • 🔸Modify Stat <Component>
      • 🔸Modify Stat <Asset>
      • 👨‍💻Public Methods
    • Animator Behaviours
      • Message Behaviour
      • Random Behaviour
      • Is Kinematic Behaviour
      • Sound Behaviour
      • Rigid Constraint Behaviour
    • 🟩Trigger Proxy
    • 🔌Interactable
    • ⚡Interactor
    • ⁉️Conditions
    • 🎥Free Look Camera
    • 🎥Cinemachine
    • UI
      • Unity Utils
  • Riding System (HAP)
    • Horse Animset Pro (HAP) Riding System
    • The Art of (HAP)
    • Mount
      • Methods and Properties
    • MRider
      • Methods and Properties
    • Mount Triggers
    • Mount Points
  • Utilities
    • Material Changer
    • Active Meshes
    • Effect Manager
    • Effect Behavior
    • Animator Event Sounds
    • Blend Shapes
      • Blend Shape Preset
    • Look At
    • 🏹Aim
    • 🎯Aim Target
    • 🎯Lock On Target
    • 🐾Steps Manager
    • 🐾Step Trigger
    • 🔗Mode Align
    • 🔗Aligner
    • Component Selector
    • MAnimalAnimatorSync
    • Multiple Time Checker
    • MAnimalAnimatorSync
  • Annex
    • 🗃️Integrations
      • General HAP Integration
      • Rewired
      • Invector Templates
        • Invector Weapon Settings
      • Animals Controller + Invector
      • Ootii's Motion Controller
      • Opsive Ultimate Character Controller (UCC 3.03)
      • Opsive Ultimate Character Controller (UCC 3.08) Generic
      • AStar Pathfinding
      • Unity Input System (NEW)
        • New Input Link [Old Versions]
      • Game Creator
      • Game Kit Controller
    • Contact
    • 🤔FAQ
    • Refund Policy
  • Games using Malbers Animations
  • Interfaces
    • IAITarget
    • IWayPoint
    • IAIControl
    • IAim
    • IAlign
    • IGravity
    • IInteractor
  • ULTIMATE SELECTOR
    • Overview
    • Selector Manager
    • Selector Editor
    • Selector Controller
    • Selector Item
    • Selector UI
    • Selector Data
    • Changelog (Selector)
  • 🎒Malbers Inventory Add-On
    • Overview
      • Compatibility Matrix
      • Roadmap
      • Update Notes
  • Updating from v1.1.1 to v1.2 Instructions
  • Basic Setup Instructions
    • Creating a new Item
      • Adding Buffs/Debuffs to Items
      • Setting up Item Reactions
      • Custom Rarities
    • Setting up Item/Inventory Types
    • Set up the Pick/Drop Component
    • Setting up the Notifications
    • Setting up the Item Info panel
  • Inventory Set
    • Events
  • Inventory Master
  • Notification Manager
    • Notification Child
    • Events
  • Save/Load System
  • Item Spawner
  • Storage Chests
    • Chest Inventory
    • Chest Inventory UI
  • Using Armour
  • Shop System
    • Shop
    • Shop UI Manager
  • Cooking System
    • Create a new Recipe
  • UI Manager
  • Hotbar
Powered by GitBook
On this page
  • Overview
  • How it works
  • Requirements
  • Parameters
  • Animator
  • Use Update 0
  • Weight (Global Weight)
  • IK Sets
  • Active
  • IK Set Name
  • Weight
  • Enable Time
  • Disable Time
  • Aimer
  • Filter by State and Filter by Stances
  • Lerp Weight
  • Targets
  • IK Weights
  • IK Processors
  • Verify
  • Active
  • Target Index
  • Name
  • Weight
  • Events
  • On Weight Changed
  • On Set Enable
  • On Set Disable

Was this helpful?

  1. Secondary Components

IK Manager

PreviousCheckPointNextIK Processors

Last updated 8 months ago

Was this helpful?

Overview

This component handles everything IK related. It uses IK Sets and IK Processors to keep all the IK modifications modular.

How it works

Let's say you need IK to fix the positions of the hands and spine when carrying a box, or you need to fix the Hands when carrying a rifle, or place the hands properly when climbing a wall. First, you will need to create a new IK Set. Inside this new IK Set, we will add IK Processors that will handle the corrections of the bones needed. These processors calculate all the Inverse and/or Forward Kinematic steps to get a proper final result. Finally, you will set the filters and weights from when you want that IK set to be active.

Requirements

  • It requires a reference for the Animator Controller the character is using. Make sure the reference is set properly.

  • Each IK Processor from the set may require an external Target as a Transform to work. if the Transform does not exist, the IK Processor will be ignored.

  • The activation of each IK Set is done using the component: IK Connector. That will send to the character what IK Set to activate or deactivate. This component also can give external data to the IK Mangaer like Transform Targets.

Parameters

Animator

Reference for the Animator Controller Component. [Required]

Use Update 0

When an Animator controller uses AnimatePhysics, IK calculations cause jittering in the bones. Calling Animator.Update(0) solves the issue, but it creates an extra cycle on the animator. Use it cautiously

Weight (Global Weight)

Global IK weight for all IK Sets, this will disable completely all IK calculations if the weight is zero.


IK Sets

Each IK Set represents a IK configuration for a certain mechanic on your controller. E.g. you can have an IK set for carrying a box, another for when you are using two-handed weapons, and another when the character is Aiming with a bow.

Active

Enable or Disable the IK Weight instantly (No Smooth weights)

IK Set Name

Name of the Set. This is used to find Sets using the component IK Connector to enable or disable them

Weight

Local weight for the IK Set.

Enable Time

When the Set is active, this will smoothly activate it using this time value

Disable Time

When the Set is disabled , this will smoothly deactivate it using this time value

Aimer

Some IK Procesors use a Direction vector to calculate their logic, such as Look At and Aiming. The Aimer component will give that data.

Filter by State and Filter by Stances

When the IK Set is active it will check if the character is on any of these states or stances. This will automatically turn the Set on or off temporarliy if a state or stance not included in the list gets activated.

E.g. While the Bow is being aimed and the character enters the water, the IK will be off temporarlily until the character goes back to locomotion.


Lerp Weight

This will allow the IK Set weight to turn on and of slowly. Set it to zero to change the weight instanlty.

Targets

Some IK processors require an external target. These will be stored at runtime here. Use the IK Connector Component set these parameters from external sources

IK Weights

IK weights are a modular way to change the IK Set weight value. Allowing to set the weight to zero by an animation Curve or restrict the weight using a Look Direction.

For more details on each available weigth processors so far check

IK Processors

IK processors holds all the logic for all the IK calculations. Most of the available processors are meant to be used for Humanoid Rigs using Unity Human IK System.

Verify

This check all the processors initial values. Checks if there's a correct target index

It will sent a Console Log to see if some changes are needed:

Active

Enable Disable the Processor. Useful for debuggin porpusess.

Target Index

Index of the Array of targets the IK procesor Requires. If the IK processor does not need any Target, set this value to -1

Name

Name or description of the IK Processor.

Weight

Weight of the processor. This is multiplied by the IK Set Processor at the end

To check how each avaiable procesor works please check this page:

Events

Use the events to add extra logic when an IK set is enable or Disabled

On Weight Changed

Invoked everytime the weight changes its value

On Set Enable

Invoked when the Set is enabled (Weight is greaters than zero)

On Set Disable

Invoked when the Set is zero (Weight is zero)

Weight Processors
IK Processors