Versatile Third-Person Controller documentation:

Versatile Third-Person Controller


Versatile Character Controller is a comprehensive third-person character system developed for Unity. It provides a robust and flexible framework for a variety of character movements and interactions, making it an ideal foundation for third-person games.


  • Versatile Character Movements: The system supports a wide range of character movements including walking, jogging, sprinting, crouching, crawling, taking cover, climbing, vaulting, rolling, interacting, health, Stamina, and dying.

Importing and Setting Up Animations

This system is designed to work with your animations. You will need to import and set up your animations to work with the various character states provided by the system. Here's a general guide on how to do this:

  1. Import your animation into your Unity project.
  2. In the Animation Controller for the player, create a new state for each animation.
  3. Set up the transition conditions to and from each state.
  4. In the corresponding script for each state (e.g., PlayerClimbState, PlayerEnterClimbState, PlayerExitClimbState, PlayerRollState, PlayerVaultState), assign your animation to the appropriate variable.

Please note that each animation should be set up to work with the variables in the corresponding state script. These variables control the speed, duration, and other aspects of the animation, and can be adjusted to customize the behavior.For more detailed instructions and information about the system, please refer to the full documentation.

  • Dynamic Camera System: The system incorporates two virtual cameras - a standard camera and an aim camera, providing diverse perspectives for gameplay.
  • Interactive Environment: Characters can interact with various elements in the environment such as doors and elevators, enhancing the immersive experience.
  • Stamina and Health Systems: Characters have a stamina system that depletes with prolonged activity and recharges during rest. The health system is designed to decrease when the character jumps from significant heights, with the damage proportional to the jump height.
  • Interfaces: The system includes predefined interfaces for interactable objects, health, and stamina, providing a structured approach to character interactions.
  • Animation Rigging: The system leverages animation rigging for more realistic and fluid interactions with doors and elevators.


This project relies on the following Unity packages and components:

  • Unity Packages:
    • Cinemachine: For the dynamic camera system.
    • Animation Rigging: For enhanced character animations.
    • Input System: For using the new input system.
    • Third-Person Starter Asset: For the character in the demo scene.
  • Unity Components:
    • Animator: To control the character's animations.
    • CapsuleCollider: To handle the character's collisions.
    • Rigidbody: To apply physics to the character.
    • InputActionManager: To handle the character's input using the new Input system.
  • Scripts:
    • CharacterConfig: This is the main script that holds all the other scripts. It's used for adjusting the values of various game elements like movement, vaulting, rolling, and the capsule collider, cover, etc.
    • InputActionManager: Manages player input.
    • CameraSystemManager: Manages the camera system.
    • PLayerController: Process the inputs and the transitions between player states.
    • PlayerHealth: Manages the player's health.
    • PlayerStamina: Manages the player's stamina.
    • Other scripts: These include scripts for different character states (e.g., PlayerRollState, PlayerVaultState). Each script controls a specific aspect of the character's behavior.

Please ensure you have these dependencies installed and assigned in the Unity editor before using the Versatile Character Controller.


To install the Versatile Character Controller, follow these steps:

  1. Purchase and download the project from the Unity Asset Store.
  2. Open Unity and import the project.
  3. Ensure you have the required dependencies installed: Cinemachine and Animation Rigging and Input System.


Here's a basic example of how to use Versatile Character Controller:

  1. Add the character to your scene.
  2. Configure the character's movements and interactions as needed.
  3. Play the scene to see the character in action.

For more detailed instructions and examples, please refer to the included documentation.


For general inquiries, contact us at [].If you have any questions or issues with the Versatile Character Controller, contact us at []. We're always happy to help!


This project is available for purchase on the Unity Asset Store. By purchasing this product, you are granted a license to use the system in your projects. Please refer to the Unity Asset Store terms and conditions for more information.


This project makes use of the following resources:

  • Unity's Third-Person Starter Assets: These assets provide the character model and animations used in the demo scene. You can find more information about these assets on the Unity Asset Store.

Please note that these assets are subject to their own licenses and may require separate purchase or attribution. Always check the license details of any third-party assets you use in your projects.