Hi there,
Im working on a simple fps game in unity and I ran into a raycast problem with the enemy AI. I am trying to draw a raycast from the enemy’s position towards the players position. I use the following code for this:
var direction = player.transform.position - transform.position;
ray.direction = direction;
ray.origin = transform.position;
if(Physics.Raycast(ray, hit, 18))
{
Debug.DrawLine(ray.origin, hit.transform.position, Color.red, 18);
if(hit.collider.tag == "Player")
{
playerHp.playerHealth -= 10 * Time.deltaTime;
}
}
The red line im drawing using Debug.Drawline goes from the enemys position towards the (0,0,0) point of the scene. Why is this happening even tho I calculated the direction the ray should be going and passing it on using ray.direction.