Introduction
What it is
You can find many character controllers of various types on the Asset Store or elsewhere, but I have found them to be either too simple / basic, OR just overkill for what I'm trying to do. Cost is also a big factor - maybe you don't have $300 to drop on a character controller / game template that includes a ton of stuff that is completely irrelevant to your game.
Over the years, Unity has provided a number of different 'starter assets' for the community to use, but these have always been (in my opinion) a combination of too simple (functionality-wise) and not the greatest code under the hood.
The History
I have found myself writing and rewriting various what should be a simple character controller many times. In fact, you can find previous incarnations that I have released on github.
While functional, both of the above controllers suffer basically the same issue that the default Unity starter samples do - they are too simple to do much but serve as a prototype if you need a simple character moving around.
The New++ edition (this one)
Over the years, what is expected from a third person character controller has basically standardized (in my opinion). Whether you're looking at GTA to PUBG to Fortnite, all of these games provide a fairly similar character controller, providing:
Camera relative movement
Multiple 'move' modes:
When not 'aiming' the character rotates to face the direction they are moving. Animation is basically just 'idle / walk/ run'
When 'aiming', the character faces the direction the camera is looking, switching to 8 direction movement animations
The character should support other actions like jump / fall etc in order to navigate the environment properly.
And that's where we're at! The Simple Character Controller provides all of this functionality and can be used by anyone to start building out their own third person game!
Last updated