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
  • Creating the Jump State
  • Priority
  • Common State Properties
  • Tag Modifiers
  • Requirements
  • Animator
  • Jump Sub-Animation State
  • Animation Clips
  • Transitions
  • Jump Parameters
  • Jump Pressed
  • Jump Pressed Lerp
  • Air Rotation
  • Air Control
  • Jump Profiles
  • Name
  • Vertical Speed
  • Fall Time
  • Jump Ray
  • Cliff Time
  • Cliff Land Distance
  • Jump Multiplier (Height)
  • Jump Multiplier (Forward)

Was this helpful?

  1. Main Components
  2. MAnimal Controller
  3. States

Root Motion Jump

<done>

PreviousBasic JumpNextSwim

Last updated 3 years ago

Was this helpful?

Overview

The Jump state is in charge of allowing the character to Jump. Its State is 2. This State uses Root Motion Animation to have more precise Air and Land Movement while jumping.

Root Motion Jumps look like this:

Which are divided on JumpStart, JumpAir and JumpEnd.

How it works

When the state is activated.. the animation will be activated. The starting position will be store to later compare the Height of the Jump according to the ground. When the jump height is on its peak a raycast will be executed to check if the Animal can complete the jump with the Jump End animation or it will go to the Fall state.

Creating the Jump State

To create a new Swim State Click the Plus button on the States list:

Or just duplicate any of the already created Jump states assets of any animal you own and drag it to the States List.

Priority

Remember:

Higher Priority states will prevent lower priority states to try to activate themselves.

Common State Properties

The basic setting for the Water states are very similar for all the animals

  • ID = Jump State ID

  • Input: Jump

  • General

    • RootMotion = True

    • Sprint = true

    • Gravity = false

    • Grounded = false

    • Custom Rotation = false

    • Orient to Ground = false

    • Ignore Lower States = true

    • Persistent = true

    • Lock Movement = false

    • Lock Input = false

    • Additional Position Speed = true

  • Exit Frame = true

  • Sleep From State: 1

    • Fall (Avoid Jumping while the Animal is falling)

  • Sleep from Mode: 2

    • Action (Avoid Jumping while making an Action)

    • Attack1 (Avoid Jumping while making a Main Attack)

  • Queue From: 0

  • Tag Modifiers: 2

    • JumpStart

    • JumpEnd

Tag Modifiers

The Jump State has a “JumpStart” and "JumpEnd" Tag Modifier by default. This allows the Jump state to have an entering and exiting animation for jumping which it will modify core parameters on the controller while it is playing the Enter and Exit Jump Animation.

The values for the Animal parameters that the Jump Start modify are:

The values for the Animal parameters that the Jump End modify are:

Requirements

Animator

The Jump State require Animations states that makes the animal Jump.

Inside the Jump Sub-Animation State you will find more Sub-States that are activated by the current Vertical Speed the animal uses.

For Example the Jump Forward will be activated if the Vertical Speed is greater than 0.1; Jump Run will be activated if the Vertical Speed is greater than 2.1

Jump Sub-Animation State

Each Jump Sub-Animation State are divided in 3 Animation States.. Jump Start, Jump Air and Jump End.

For example Jump Forward Start have the Tag JumpStart. That way the controller can know which Animation for the Jump is currently playing and then it can apply the proper controller modifications.

  • Jump Start Animation have "JumpStart" Tag

  • Jump Air Animation have the "Jump" Tag

  • Jump End Animation have the "JumpEnd" Tag

Animation Clips

All Jumps Animations are Split it 2 Types. Baked, and Non Baked on the Y Axis.

  • The Start and End Jump uses the [Baked] version of the Animation.

  • The Air Jump use the [Non-Baked] version.

Transitions

  • The same Exit time and Transition offset.

  • Has Exit Time Enabled.

  • Transition Duration should have a very small value (0.01 ~ 0.1)

  • No Conditions

Modify the Exit Time and Transition Offset values until you have the correct number. So when you scroll the Preview Animation window, the Root should remain on the ground until the Animal take off with the jump:

Important!

The Exit time value on this transition must have greater that the Transition Duration value of the Locomotion and Idle Exit transitions. If this is not set properly it will case to play the Jump Start Animation completely. and then the Jump Air... and that's wrong.

In this case you can create new transitions for the Locomotion Exit to be specific to Jump with a more smaller value on the Transition Duration. In this case Locomotion has new Exit Transitions with different Transition Duration to be applied when the next state is Jump.

  • The same Exit time and Transition offset.

  • Has Exit Time Enabled.

  • Transition Duration should have a very small value (0.01 ~ 0.1)

  • No Conditions

Modify the Exit Time and Transition Offset values until you have the correct number. So when you scroll the Preview Animation window, the Root should be on the air until the Animal land with the jump:

  • Has Exit Time Disabled.

  • Transition Duration = 0.2 ~ 0.4

  • Condition [State != 2]

This transition is used when the Animal changes to Fly or Fall while is Jumping.

The transition from End to Exit should have:

  • Has Exit Time Enabled.

  • Transition Duration should have a very small value (0.01 ~ 0.2)

  • No Conditions

Jump Parameters

Jump Pressed

If the Jump Input is pressed the animal will keep applying the Jump Y Root Motion movement.

Jump Pressed Lerp

Smoothness value to change the Jump Y root motion movement value.

Air Rotation

Amount of rotation the animal can do while is on the air.

Air Control

Allows Rotating the wolf while jumping and falling.

Jump Profiles

It Set the proper values for each Jump based on its vertical speed.

Jump profiles should be set from lower to higher vertical speeds.

Name

Name of the Jump Profile. Click on the name to rename it.

Vertical Speed

The vertical speed allows to use the correct Profile for the correct Jump Animation

E.g. for Jumping in Place Animation it will use the Vertical Speed of 0, for Forward jump it will use the vertical speed of the animal between 0 and 1... and so on.

Fall Time

Fall time is the Normalized time on the Jump animation you want to check if the animal can transition to a fall animation ... usually is the time after the animal is on its highest point of the jump animation. you can find it by scrolling the Jump animation:

Jump Ray

Jump Ray and Fall time are used together.. the value of this parameter is determined by the Fall Time value.

This value is used to cast a ray from the Chest Pivot of the animal to the ground to find if there is ground beneath him. if the Rays fails then it will transition to the Fall animation.

To find the proper value drag the animal to an empty scene and perform several jumps with a Higher Jump Ray Value. Enable the Debug Option on the Jump State and the Console will show the Min Distance to complete a Jump.

E.g. for the Wolf Jump In place the value to complete the In Place Jump is 1.74. So on the Jump Profile is set to 1.8 (to add a little margin for small steps or small changes on the ground)

If the Ray cast does not find any ground beneath then it will go to the Fall State

Cliff Time

Normalized time range to find higher ground while jumping)

Cliff Land Distance

Cliff Ray Length to check for higher ground.

The Cliff Ray is represented by a black line (is visible from the Cliff Time 0.6 and 0.8 normalized time of the Jump animation). If this ray finds a higher ground it will interrupt the Jump and it will go to the locomotion state.

Jump Multiplier (Height)

Multiplier to add more Height to the Jump Animation

Jump Multiplier (Forward)

Multiplier to add more Distance to the Jump Animation

The state should have a higher priority than , and .

If you want your Character to jump while in the water: should be above Swim in the State list.

The Jump State requires Root Motion Jump Animations. All Malbers Animals and creatures have this animations. If your character does not have RM Jump Animations, is recommended to use the State instead.

The order of the Transition is very important too.. when the Jump State is activated it will check the transitions by its order. Jumps with Higher Vertical speed should be set first.

This States have their own Animation Tag, that correspond to the list..

The transition from Start to Air should have:

The transition from [Air] to [End] should have:

The transition from [Air] to [Exit] should have:

Exit Time must be greater than the Exit time value of the Transition (Air to End)

🐺
🔷
🤾‍♂️
⚠️
☑️
☑️
☑️
⚠️
Idle
Locomotion
Fall
Jump
Jump Basic
Jump Tag modifier
Wolf using RootMotion Jump
The Transition condition is State = 2
Non-Baked (The RootBone retains the Y Movement of the Jump)
Baked (The Root bone does not retain the Y movement of the Jump)
ID