프로그래밍/기본기ㆍ자료구조
2020. 4. 12.
GimbalLock (짐벌락)
오일러각을 이용한 회전에서 같은 방향으로 두 회전 축이 겹치는 현상 x,y,z로 세 개의 회전축이 있으며 회전 순서에 따라 한축의 각도가 90도가 되었을 때 나머지 두 축이 겹치게 된다. 예를들어 x,y,z 순으로 회전한다고 하면 맨 처음 x를 회전하고, 그 다음 y를 회전하고, 마지막으로 z를 회전한다. 이 때 y축이 90도로 회전할 때 짐벌락이 발생한다. 듣기로는 단순히 수학적으로는 아무 문제 없는 결과라고 하는데.. 3차원 상에서 좌표변환 시에 문제가 발생한다. (유니티3D에서 transform에 있는 rotation이 오일러각을 이용한 녀석이다.) 짐벌락을 피하려면 1. 쿼터니언(quaternion 사원수)을 사용한다. 2. 회전하는 순서를 바꾼다. - 이 방법에 대해서는 직접 해본것은 아닌데 자..