오일러 각의 특징
: 3차원 공간의 회전을 지정할 때 직관적인 인터페이스 제공
설정할 값도 세가지뿐이고, 직관적인 표준기저벡터를 회전축으로 사용하므로 회전을 설계하기가 용이함
사용자 입장에서 물체의 회전을 설정할 때 가장 적합
적은 용량으로 3차원 공간의 회전 정보 기록 가능
행렬을 사용해 3차원 공간의 회전을 표현하려면 최소 9개의 실수 데이터가 필요하지만, 오일러 각은 3개의 데이터만 있으면 3차원 공간의 회전을 표현할 수 있음, 이는 트랜스폼 정보를 줄일 수 있어 적은 용량으로 게임 데이터를 관리할 수 있게 도와줌
짐벌락 현상
ex)
1) z축으로 90 회전 (반시계 방향)
2) x축으로 -90 회전(시계 방향)
3) y축으로 -45 회전
결과적으로 z축과 y축은 회전을 하는 동안 동일한 회전이 되어 세 개의 축으로 자유롭게 회전하지 못하고 두 개의 축만 회전에 사용됨
회전이 제약되는 현상을 짐벌락이라고 함
3차원 공간의 회전을 세 번으로 나눠 진행하는 오일러 각 방식을 사용하면, 실시간으로 변화하는 동적인 3차원 회전을 구현할 때 짐벌락 발생할 수 있음
짐벌락 현상을 방지하려면 회전의 구현 방식을 바꿔 로드리게스 회전 공식을 사용하거나 사원수를 사용해야 함
'Old > 게임 수학' 카테고리의 다른 글
Mesh와 WireframeRendering (0) | 2023.08.18 |
---|---|
오일러 각 문제 해결 (0) | 2023.03.29 |