Third Person Character Controller V1

Character controllers are a tricky thing to get right. It takes a lot of effort to make a game feel good, and a character controller is something that has a huge effect on how your players judge your game. I have spent a lot of time researching how to make a controller that achieves this high standard of game feel, while simultaneously trying to keep the code somewhat consolidated. I think I was successful in my mission. 

Here are some of the features I have implemented in my controller:

  • Variable jump height
  • Multi jump
  • Coyote time
  • Jump buffer
  • Variable jump gravity 
  • Camera zoom

*Please note that this demo is intended for mouse and keyboard

You can download the entire project here:

https://mattf.blog/wp-content/uploads/2025/06/matt-third-person-camera.zip

Simply import this project into Godot 4.4x or later, and it should be ready to run!

If you were to look through my code, you would notice that I have many “TODO” comments. I think there are a lot of areas where this code can be made better and will likely follow up with a second version of this project at a later date. It will likely implement controller support, advanced camera motion, and a state machine. With that said… Development takes time, and making a character controller this elaborate is not currently one of my priorities.

  • Recreating the graphic style of Mouse: P.I.
  • What does 18 months of drawing practice look like?
  • Parallax UI
  • Third Person Character Controller V1