유니티게임개발/기초공부

유니티 Random 클래스 랜덤 수(Random.Range, Random.value) 사용 예시

디지털콘텐츠크리에이터 2024. 10. 15. 23:59

유니티 Random 클래스 랜덤 수(Random.Range, Random.value) 사용 예시

Random.Range

최소값과 최대값 사이의 무작위 수를 반환합니다.

무작위 위치 생성
GameObject prefab;
float x = Random.Range(-5.0f, 5.0f);
float z = Random.Range(-5.0f, 5.0f);
Debug.Log("X,Z:" + x.ToString("F2") + ","+ z.ToString("F2"));
Vector3 randomPosition = new Vector3(x, 0.0f, z);
Instantiate(prefab, randomPosition, Quaternion.identity);

float x=Random.Range(-5.0f, 5.0f);는 주어진 범위 안에서 임의의 값을 선택하고 이것을 새로운 변수 x에 할당하는것을 의미합니다.
Debug.Log 함수에서 콘솔 패널에 무작위로 선택한 x와 z값을 표시합니다.
ToString("F2")에서 실수값 x를 소수점 이하 두 자리로 지정합니다.
콘솔 패널에서 x,z:2.44, -4.02와 같이 출력합니다.

무작위 회전
float randomX = Random.Range(0f, 360f);
float randomY = Random.Range(0f, 360f);
float randomZ = Random.Range(0f, 360f);
transform.rotation = Quaternion.Euler(randomX, randomY, randomZ);

무작위 아이템 드랍
GameObject[] items;
int randomIndex = Random.Range(0, items.Length);
Instantiate(items[randomIndex], transform.position, Quaternion.identity);

 


Random.value

0.0에서 1.0 사이의 임의의 부동 소수점 수를 반환합니다.
무작위 크기 조정
float randomScale = Random.value;
transform.localScale = new Vector3(randomScale, randomScale, randomScale);

 

무작위 색상
Color randomColor = new Color(Random.value, Random.value, Random.value);
GetComponent<Renderer>().material.color = randomColor;