Random.Range 


컴퓨터 프로그래밍 언어에서는 난수라고도 한다.

사실 컴퓨터는 랜덤이란게 있을 수 없기 때문에 일정 범위에 숫자값을 집어넣고

그중에 윈도우나 유니티상에서 시간값을 가지고 숫자를 뽑아내는 것을 난수라고 한다.


유니티에서는 Random.Range가 존재한다.


사용법

Random.Range(min,max ) //min [inclusive]과 max [inclusive]사이의 랜덤 float 수를 반환


주의할점을 값이 int일 경우 max값은[exclusive] 나오지 않는다. 


public class ItemDrop : MonoBehaviour {


    public GameObject Item;


void Start () {

        InvokeRepeating("Spawnitem", 1, 1); //1초에 1번씩 Spawnitem()를 호출한다.

    }


    void Spawnitem()

    {

        

        float randomX = Random.Range(-23f, 19f); 

        if(true)

        {

            Debug.Log("생성");

            GameObject item = (GameObject)Instantiate(Item, new Vector3(randomX, 1.1f,0f), Quaternion.identity);

        }

    }

}


InvokeRepeating : time 초에 /methodName/메서드를 호출한 후, 매 /repeatRate/초 마다 반복적으로 호출

Instantiate(Item, new Vector3(randomX, 1.1f,0f), Quaternion.identity); Item이라는 프리팹을 생성한다.

Quaternion.identity : 회전없음



생성될 아이템 프리팹을 설정한다.



아이템이 랜덤으로 생성되는것을 볼 수 있다.

위 코드는 X위치만 랜덤 생성해 주었지만 Z값도 랜덤 설정하면 사방에서 스폰 될 것이다.



+ Recent posts