본문 바로가기

IT이야기/unity,c#

유니티] 오브잭트 랜덤 배치 예제

public class EnemyControl : MonoBehaviour

{

    public float Speed = 50.0f;

    private Transform myTransform = null;

    

    // Start is called before the first frame update

    void Start()

    {

        myTransform = GetComponent<Transform>();

    }

 

    // Update is called once per frame

    void Update()

    {

        Vector3 moveAmount = Speed * Vector3.back * Time.deltaTime;

        myTransform.Translate(moveAmount);

 

        if(myTransform.position.y <= -60.0f)

        {

            myTransform.position = new Vector3(Random.Range(-60.0f, 60.0f), 60.0f, 0.0f);

        }

    }

}

 

new Vector3(Random.Range(-60.0f, 60.0f), 60.0f, 0.0f);

 

-60~ 60 사이의 랜덤을 의미한다.

 

x y z 전부 일정 범위의 랜덤을 지정하고 싶을땐

 

Random.Range(x,-y)로 각각 분배 해주면 됨.

 

범위는 x~ -y 사이이며

 

x를 30 y 를 20으로 한다면 30~-20사이를 랜덤하게 선택하게된다

 

끝!