We want to add a Rigidbody
Component to Player, and use gravity. Moving will be accomplished by applying a force to Player.
When using Rigidbody
physics, Unity tells us to use the FixedUpdate()
method, not the Update()
method.
Look in Unity Manual | Creating GamePlay | Physics. Here's a quote:
If you move the Transform of a non-Kinematic Rigidbody directly it may not collide correctly with other objects. Instead you should move a Rigidbody by applying forces and torque to it.
Also, look in Scripting Reference | MonoBehaviour.FixedUpdate:
FixedUpdate should be used instead of Update when dealing with Rigidbody. For example when adding a force to a rigidbody, you have to apply the force every fixed frame inside FixedUpdate instead of every frame inside Update.
18.188.137.58