An open API service indexing awesome lists of open source software.

https://github.com/pradeepgamedev/simplethirdpersoncontroller

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.
https://github.com/pradeepgamedev/simplethirdpersoncontroller

c-sharp game-development third-person-controller unity unity3d

Last synced: about 2 months ago
JSON representation

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.

Awesome Lists containing this project

README

          

# 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**:
```bash
git clone https://github.com/PradeepGameDev/SimpleThirdPersonController.git

or

1. Download Unity package [SimpleThirdPersonController](Assets/SimpleThirdPersonController.unitypackage) inside **Assets** folder.

### Open the Project

1. **Launch Unity Hub**.
2. Click **Open** and select the folder where you cloned the repository.

or

2. 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](Assets/Screenshots/idle.png)
![Player Jumping](Assets/Screenshots/jump.png)
![Player Sprinting](Assets/Screenshots/sprint.png)

## ๐Ÿ“œ License

This project is licensed under the **MIT License** - see the [LICENSE.md](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](https://assetstore.unity.com/packages/3d/characters/low-character-pack-free-sample-192954)
- **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

- [GitHub Repository](https://github.com/PradeepGameDev/SimpleThirdPersonController)
- [Unity Official Documentation](https://docs.unity3d.com/)