Character move where camera is pointing

I’m having some troubles with my camera, I have this ball which I move around with a very basic movement script

var up = 30;
var down = -59;
var east = 30;
var west = 30;

function Update()
{
if (Input.GetKey("up"))
 {
 rigidbody.AddForce(Vector3.forward * up);
 }
if (Input.GetKey("down"))
 {
 rigidbody.AddForce(0,0,1*down);
 }
if (Input.GetKey("left"))
 {
 rigidbody.AddForce(Vector3.left * east);
 }
if (Input.GetKey("right"))
 {
 rigidbody.AddForce(Vector3.right * west);
 }
}

but i want the ball to move were my camera is pointing and not according to the axes.

Thanks in advance.

You should always be clear in your mind about what coordinate system you are using. If it’s relative to an object rotation (local), see TransformDirection in the documentation. If it’s world coordinates, u can use Vector3.up/right/forward but usually you are moving in relation to something else.