Add Gravity to Player

Physics Based Character Controller part 2

In this article we will add gravity to our player controller.

When player is NOT touching the ground we apply gravity. This is a float number we set at the top of our script. We can simply subtract gravity from the y value of our velocity.

void Update()
{
Vector3 direction = new Vector3(Input.GetAxis(“Horizontal”), 0);
Vector3 velocity = direction * _speed;
if (_controller.isGrounded == true)
{
//do nothing
}
else
{
velocity.y -= _gravity;
}

_controller.Move(velocity * Time.deltaTime);
}

--

--

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store
Tristan Engel

Tristan Engel

18 Followers

Aspiring developer that’s self-learning Unity & C# to transition to a career with Unity. I got a passion for creating interactive experiences.