🕴️Idle
Last updated
Last updated
The Idle State is the most basic state on the controller. Its State ID is 0. It allows the animal to stay idling in a single position.
Idle is the only state that does not require any further configuration. It has no custom parameters.
This works as the base state, when the animal is idling. Doing nothing
To give more personality to the character you can have more than one Idle animation and randomize playing them using the Random Behaviour on the Animator Controller.
To create a new Idle State Click the Plus button on the States list and add the Idle
Or duplicate any of the already created States asset of any animal you own and drag it to the States List.
It has the lowest priority of all states and it should always be at the bottom of the list.
All Higher states can be activated.
The Idle State does not require extra gameobjects, pivots or internal animal configuration. Just an animation or animations to be used as Idles.
This state is Activated automatically when there's no Movement registered on the Animal Controller.
You can always Force its activation via code.
Animal.State_Force(0)
or Animal.State_Force(StateEnum.Idle)
Through code the exits conditions will be executed to check if the State can exit. In the case of this state the conditions are:
Movement on the Animal is being registered. MAnimal.MovementAxis != Vector3.zero
The Idle state requires animation states in charge of the Idle Logic.
The Sub-State Machine [Idle] will hold all the Idle Animations.
Its entering transition conditions are:
The Idle Substate machine is the only Subtate machine that needs a transition to itself:
This allows the idles animations inside the state to exit and then come back to the next Idle Animation.
All States have a core animation, on which the animal will play while the state is active. In case of Idle, all idle animations are core animations.
The core animations must be always tagged just like the Name of the State ID.
The Idle State is the only one that needs exit transition
To play random Idle Animations you need to add the Random Behaviour to the Idle SubState Machine and then set the entry transitions to different random values within the Random Behaviour Range Value:
Using Higher Range values on the Random Behaviour with just a few animations, it will give more priority to some animations more than other.
In the Image example.
[Idle] will be played more if the Random value is between (0 - 6)
[Idle Look] will be played if Random is = 7
[Idle Look Opp] will be played if Random is = 8
So [Idle] will be played more often.