Raycast Not Rotating

I’m currently making an open world first person shooter game and I’m only 13 so I have little knowledge of programing. Anyways I have a gun which I would like to be able to shoot. I’ve set up the raycasting on it and it works fine. I then added the debug.DrawRay to my code and noticed that when I moved around the line only moved up and down but will not rotate with the gun. I hope that all made sense! Here’s my code : `function Update () {

var fwd = transform.TransformDirection (Vector3.forward);
if (Physics.Raycast (transform.position, fwd, 10)) {
print (“There is something in front of the object!”);
}
Debug.DrawRay(transform.position, Vector3.forward * 10, Color.green);
}
`
THANKS IN ADVANCE

You are not drawing the ray in the same direction as the RayCast. You are raycasting in the direction of the “fwd” vector while you are drawing the ray in the direction of Vector3.forward (which is the global forward axis). Use the “fwd” variable as the direction in the Drawing function instead.

Also, you do not have to do a TransformDirection to to get the forward direction of the transform. Transform has a shorthand for that you can use instead: transform.forward.

var fwd = transform.forward;

Thanks, I realised not long after but it was actually rotating I just hadn’t set up the draw ray to show it rotating!