Gimbal Lock

짐벌락 현상

오일러 각을 통한 회전에서 2개 이상의 축의 방향이 겹쳐 원하는 방향으로 회전하지 못하는 현상. Unity에서 Rotation의 X를 -90으로 설정하면 Y와 Z가 같은 방향으로 회전하게 되는 현상을 관찰할 수 있다.

짐벌락 현상의 원인

오일러 각을 통해 회전하게 되면 처음 회전한 축에 나머지 축이 의존하게 된다. 이는 회전에 순서가 있기 때문이다. 예를 들어 yxz축 순으로 회전할 때, y축의 회전에 의해 xz축이 움직이고, x축의 회전에 의해 z축이 움직인다.

짐벌락 현상 해결법

쿼터니언을 사용하는 것이 이상적이다.