Skip to content

A Unity-based third-person character controller created entirely from scratch without relying on Unity's built-in character controller. This project is designed to provide developers with a foundational, fully customizable third-person control system for 3D games.

License

Notifications You must be signed in to change notification settings

PradeepGameDev/SimpleThirdPersonController

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

32 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Simple Third Person Controller

A Unity-based third-person character controller created entirely from scratch without relying on Unity's built-in character controller. This project is designed to provide developers with a foundational, fully customizable third-person control system for 3D games. It demonstrates how to build essential movement mechanics using only Unity's core components and C# scripting. Whether you're building an action-adventure game, an RPG, or any 3D project requiring character movement, this controller serves as a starting point for learning and development.

๐Ÿš€ Features

  • Third-Person Movement: Smooth character movement using standard input controls.
  • Camera Control: Cinemachine is used to control camera.

๐Ÿ“‚ Project Structure

  • SimplePlayerControllerExample/: Contains all project resources such as scripts, prefabs, and scenes.
  • SimplePlayerControllerExample/Scripts/: Includes C# scripts for character and camera controls.
  • SimplePlayerControllerExample/Scenes/: Pre-configured demo scene showcasing the controller in action.

๐Ÿ› ๏ธ Getting Started

Prerequisites

  • Unity: Version 2021.3.21f1 LTS or later. It is also compatible with Unity version 6000.0 or newer.
  • Make sure to import Cinemachine and New Input System from Unity Registry.
  • Familiarity with Unity and C# scripting is helpful but not mandatory.

Installation

  1. Clone the repository:
    git clone https://github.com/PradeepGameDev/SimpleThirdPersonController.git
    
or
  1. Download Unity package SimpleThirdPersonController inside Assets folder.

Open the Project

  1. Launch Unity Hub.
  2. Click Open and select the folder where you cloned the repository.
or
  1. Create new or Open any existing project and import downloaded package from Assets->Import Package->Custom Package.

Run the Demo

  1. Open the demo scene from the Scenes folder.
  2. Press the Play button to see the third-person controller in action.

๐ŸŽฎ How to Use

Player Controls

  • Use the default WASD/arrow keys for movement.
  • Rotate the camera using the mouse.

Note: Make sure the ground layer and player's layer is not same. Because it can cause IsGrounded to be true always.

Customize Controls

  • Modify Unity's Input Manager to remap controls as needed.

Extend the Controller

  • Add your own animations, abilities, or interactions to expand functionality.

๐Ÿ“ธ Screenshots

Idle Player Player Jumping Player Sprinting

๐Ÿ“œ License

This project is licensed under the MIT License - see the LICENSE.md file for details.. You are free to use, modify, and distribute this project as per the terms of the license.

Third-Party Assets

This project uses the following third-party assets to enhance the visuals and overall experience:

  • Ninja Character Model: A character model used for the player avatar. Available at Unity Asset Store
  • Starter Assets Environment: A prebuilt environment from Unityโ€™s Starter Assets package, providing a simple and visually appealing scene.

Note: These assets are for demonstration purposes and are subject to their respective licenses. Ensure you comply with the asset terms when using them in your own projects.

๐Ÿ”— Links

About

A Unity-based third-person character controller created entirely from scratch without relying on Unity's built-in character controller. This project is designed to provide developers with a foundational, fully customizable third-person control system for 3D games.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages