Головна‎ > ‎Unity‎ > ‎

Рух по маршруту

public GameObject[] waypint// в Юніті вказати кількість і додати об'єкти
public int num = 0;                 // почати з об'єкту номер 0 
public float minDist = 1;
public float speed = 1;
public bool rand = false;

void Update () {
float dist = Vector3.Distance(gameObject.transform.position,waypint[num].transform.position);

if(dist>minDist)
{
Move();
}
else
{
if(rand == false)
{
if(num+1 == waypint.Length)
{
num = 0;
}
else
{
num++;
}
}
else
{
num = Random.Range(0, waypint.Length);
}
}
}

public void Move(){
gameObject.transform.LookAt(waypint[num].transform.position);
gameObject.transform.position += gameObject.transform.forward*speed*Time.deltaTime;
}