I'm FanJae.

[20260521] Unity 정리 ( Unity 회전 처리 기초 - Euler, Quaternion, LookAt, RotateAround ) 본문

Unity/Unity 초격차캠프

[20260521] Unity 정리 ( Unity 회전 처리 기초 - Euler, Quaternion, LookAt, RotateAround )

FanJae 2026. 5. 22. 00:09

1. Unity의 회전 방식

- Unity 내부에서는 회전을 Quaternion 으로 처리한다.

- 하지만 Inspector에서는 사람이 이해하기 쉬운 오일러 각으로 표시된다.


2. 오일러 각(Euler Angle)

(1) 정의

- X, Y, Z 축을 기준으로 회전량을 표현하는 방식이다.

(0, 90, 0)

- Y축으로 90도 회전

① 장점

- 사람이 이해하기가 쉽다

② 단점

- 짐벌락(Gimbal Lock) 문제가 발생할 수 있다.


3. 쿼터니언(Quaternion)

(1) 정의

- 3차원 공간의 회전을 표현하는 4차원 데이터 구조이다.

- Unity는 내부적으로 회전을 안전하게 처리하기 위해 쿼터니언을 사용한다.

 

① 장점

- 짐벌락 방지

- 회전 보간이 부드러움

transform.rotation = Quaternion.Euler(0,90,0);
// 오일러 각을 쿼터니언으로 변환해 준다.

Quaternion.Euler()→ 오일러 각을 쿼터니언으로 변환


4. 특정 방향 바라보기

(1) LookAt

- 현재 오브젝트가 특정 대상을 바라보게 한다.

transform.LookAt(target);

 

① 활용

- 적이 플레이어 추적

- 카메라 시선 처리


5. 중심 기준 회전

(1) RotateAround

- 특정 위치를 중심으로 회전한다.

- 자기 자신이 도는 것이 아니다.

// transform.RotateAround(point,axis,angle);
// transform.RotateAround(중심 위치, 회전 축, 회전 속도
transform.RotateAround(target.position,Vector3.up,30.0f*Time.deltaTime);

① 활용

- 카메라 공전

- 행성 공전

- 아이템 연출


6. 정리

- Unity 회전은 사람이 보기에는 오일러 각처럼 보이지만 내부에서는 쿼터니언으로 처리된다.

 
Comments