반응형
1. 원의 랜덤 좌표 공식
삼각함수 공식을 사용하여 원의 랜덤 좌표를 구할 수 있다.
public GameObject ball;
//sin(angle) = 높이/ 빗변
//cos(angle) = 밑변/ 빗변
//높이 = 빗변 * sin(angle)
//밑변 = 빗변 * cos(angle)
float angle = Random.Range(0, 360);
float radius = Random.Range(0, 5);
float x = Mathf.Cos(angle * Mathf.Deg2Rad) * radius;//밑변
float y = Mathf.Sin(angle * Mathf.Deg2Rad) * radius;//높이
ball.transform.position = new Vector2(x, y);
- Mathf.Deg2Rad는 각도를 호도법으로 변환해주는 역할을 한다. 유니티의 Mathf.cos() Mathf.sin() 함수는 호도값을 인자값으로 받기 때문에, Mathf.Deg2Rad를 사용하지 않으면 의도하지 않는 각도로 변환해 값을 반환한다.
2. 원 그리기
삼각함수 공식을 활용하여 일정한 간격으로 원을 그리는 공식
public GameObject ball;
private float speed = 10;
private float radius = 5;
private float runningTime = 0;
runningTime += Time.deltaTime * speed;
float x = Mathf.Cos(runningTime * Mathf.Deg2Rad) * radius;
float y = Mathf.Sin(runningTime * Mathf.Deg2Rad) * radius;
ball.transform.position = new Vector2(x,y);
반응형
'유니티 공부' 카테고리의 다른 글
유니티 3D 오브젝트 마우스로 회전시키기 (0) | 2023.03.17 |
---|