Getting Started

This package provides an easy to use, extendable third-person player controller. It includes locomotion component based settings for walk, run, jump, aim, strafe, swim and more. The Third Person Controller is subdivided in multiple sections InputMovementPhysicsAnimator and Motions


In this section you can setup the forward and horizontal input axis. Those axis can be set in the Input Manager. The input axis return a value from -1.0f to 1.0f so it can be used for forward, backward, left and right movement. It is possible to multiply the input axis with a Speed Multiplier which will let you character always run. The Aim Type switches the character movement style from free movement (360°) to a more combat movement style with strafing. It can be activated when a button is pressed or by a button toggle. You can of course disable aiming at all.


In the Movement you can setup the characters rotation speed and other movement limitations. Please note that forward movement speed is handled by mecanim root motion. If your character does not have root motion data or if you want to speed up an animation in vertical movement, it is possible to add a force curve to the animation itself.


Here you can setup the ground layer, skin width and physic materials. You have to play around with it to get a perfect movement for your needs.


The time allowed the parameter to reach the value. It will make the animations behave smoother.


This priority based Motion System lets customize your characters movement. Without this motions the character can’t jump, swim or change his speed.

Click on the plus button and create a new motion from a extendable list:

  • Change Height
  • Change Speed
  • Jump
  • Fall
  • Push
  • Swim
  • Simple Motion
  • Random Motion

Configurate the Input Name with the Input Manager. The Start Type and Stop Type defined how the motion is started and stopped. The Automatic start and stop type needs to be scripted in the motion component. It is possible to always enable a motion without real activation, when a button is down and disable when the button is up or to toggle it.

Consume Input Over UI lets you block any player input when the mouse pointer hovers ui.

The State field changes the animation state to the set value. So if the character is jumping the Animator Controller should transition to a jump state.