Hello everybody, i have a moving and rotating object that shoots out raycasts to see if there is any obstacle in a specific direction. The problem is that with my current code, the raycasts don’t rotate. Does anybody know how to fix this?
Code:
var rightray = new Ray (transform.position, Vector3.right); // shoots ray right even though it says left
var hitright : RaycastHit; // hit information
if(Physics.Raycast (rightray, hitright, obstacleavoidancerangeside)){if (hitright.transform.tag == "metal"){obstaclerightofyou = true;{AvoidObstacleRight();}} // If raycast hits something within o avoid obstacle
else obstaclerightofyou = false; }
var forwray = new Ray (transform.position, Vector3.forward); //Shoots ray in front of object
var hitforw : RaycastHit; // hit information
if (Physics.Raycast (forwray, hitforw, obstacleavoidancerange)){ if (hitforw.transform.tag == "metal"){obstacleinfrontofyou = true;{AvoidObstacleForward();}} // If raycast hits something within o avoid obstacle
else obstacleinfrontofyou = false;
}
var leftray = new Ray (transform.position, Vector3.left); //shoots ray left even though it says right
var hitleft : RaycastHit; // hit information
if (Physics.Raycast (leftray, hitleft, obstacleavoidancerangeside)){ if (hitleft.transform.tag == "metal"){obstacleleftofyou = true;{AvoidObstacleLeft();}} // If raycast hits something within o avoid obstacle
else obstacleleftofyou = false;
}
}
function AvoidObstacleRight (){
Debug.Log("obstacleright");
}
function AvoidObstacleLeft(){
Debug.Log("obstacle left");
}
function AvoidObstacleForward (){
Debug.Log("obstacle in front");
}