Rigidbody Player AddForce issue

I am making a simple player controller using a rigidbody and AddForce to control him. The game is first person and I am running into an issue of moving the player. When I turn the camera even slightly, Force gets added at an angle that is not the player’s forward.!
I have tried using both AddForce(transform.forward) and AddRelativeForce(Vector3.forward) but both produce the same result. The problem only happens while the player is already moving, and you turn the camera. If you move from a stationary position, you move in the intended direction.

I am also running into a problem where I cannot add a ForceMode in the AddForce. If I do the player does not move.

A picture is attached to show the Forward movement issue.

You can use rigidbody.MovePosition instead. (Unity - Scripting API: Rigidbody.MovePosition)
This way you get more controllable character.
Is there any special reason to use force?

I think you didn’t take the direction of the camera into count.

Vector3 desiredMove =
cam.transform.forward * Input.getAxis(“Horizontal”) +
cam.transform.right * Input.getAxis(“Veritical”);