티스토리 뷰
Quaternion은 Unity로 작업을 진행하며 매우 자주 쓰게 되는 요소입니다.
그런 만큼, 기존에도 알고 있었던 요소지만, 본 블로그에서 상세하게 다루지는 않았어서 한번 정리 해 보았습니다.
Quaternion에 대하여
Quaternion은 Unity에서 방향 계산 시에 사용하는 개념이다. 일반적인 좌표계념과는 다른 방식을 쓰기 때문에 다소 다루기 까다롭긴 하나, 방향 계산이라는 것이 워낙 많은 곳에서 사용되다 보니, 반드시 익숙해져야 할 요소이기도 하다.
Quaternion의 함수는 다음 4종류가 있는데, 어지간하면 Quaternion.Euler 하나만으로도 처리 가능한 편이다.
- Quaternion.Euler(Vector3) - Vector3에 해당하는 오일러 각도를 Quaternion으로 변경한다.
- Quaternion.LookRotation(forward, upwards) - 상단이 upwards 쪽을 향하는 forward 방향으로 각도를 변경한다.
- Quaternion.Slerp(Quaternion1, Quaternion2, float) - Q1과 Q2 사이를 float로 구형보간한다.
- Quaternion.FromToRotation(Vector3 from, Vector3 to) - from 벡터가 to 벡터의 위치로 가도록 회전시킨다.
알아두면 좋은 점
오일러 각도를 Quaternion으로 변경하는 함수(Quaternion.Euler)는 Radian 각도가 아닌, Degree 각도를 사용한다.
때문에 Radian 각도라면 Mathf.Rad2Deg를 곱해서 Degree 각도로 변형한 뒤에 사용해야 한다.
또한, Quaternion 값을 Vector 값 앞에 두고 곱셈을 하면 Vector값의 방향을 Quaternion 만큼 돌릴 수 있다.
'스파르타 내일배움캠프 > Today I Learned' 카테고리의 다른 글
Today I Learned - Day 19 [Animator Override Controller] (0) | 2024.10.10 |
---|---|
Today I Learned - Day 18 [Sprite 심화 기능에 대하여] (3) | 2024.10.08 |
Today I Learned - Day 16 [파일 구성 설계법에 대하여] (4) | 2024.10.04 |
Today I Learned - Day 15 [JSON, CSV, XML] (1) | 2024.10.02 |
Today I Learned - Day 14 [사전(Dictionary) 구조에 대하여] (3) | 2024.10.01 |