• 카테고리

    질문 & 답변
  • 세부 분야

    게임 프로그래밍

  • 해결 여부

    미해결

회전행렬은 따로따로 곱해지는건가요?

21.09.25 17:41 작성 조회수 210

0

아직 뒷부분 강의인 쿼터니언을 듣지 못한 상태입니다만, 미리 간단하게 질문이 있습니다.

 

저희가 SRT에서 배운 Rotation 행렬은 제가 알기로는 오일러각을 이용한 방식으로 알고 있습니다.

그러나 이 방식이 가장 큰 문제가 되는건 짐벌락 현상때문이라고 알고 있었는데,  짐벌락 현상이 일어나는 이유를 설명해야할때,

Rotation 행렬을 만들때 Z축, Y축, X축 회전 행렬을 각각 구하게되는데, 임의의 (x,y,z) 회전을 해야할때, 회전행렬은 Z축, Y축, X축을 한번에 하나의 행렬로 계산하는게 아니라,

각 축의 회전을 담당하는 회전행렬들을 정해진 순서대(Z->Y->X)로 곱해서 처리한다라고 알고 있고, 그래서 한 축씩 회전행렬을 곱해서 처리하다보니, 회전하는 축이 다른 축과 90도를 회전했을때 겹쳐지는 순간이 발생하고, 그때 문제가 발생할 수 있어서 그것을 짐벌락 현상이라고 이해하고 있는데, 제가 이해한게 맞을까요? 기술면접에서 이렇게 설명해도 괜찮을지 의문입니다.

 

그래서 쿼터니언처럼 x,y,z축 회전을 한번에 순서와 무관하게 한번에 처리하는 행렬을 만든것이라고 알고 있구요. 이건 후반부 강의를 들으면 배울 수 있을것 같습니다.

 

다만, 이 강의에서 회전행렬에 대해서 공부할때, 제가 말씀드린 부분으로 이해해도 괜찮은건지, 오류가 없는지 궁금해서 질문 남겨봅니다.

답변 1

답변을 작성해보세요.

1

네 사실 짐벌락 현상을 관찰하는게 극악으로 힘들기도 하고,
오류가 나더라도 그냥 카메라 회전이 안된다거나 하는 수준이라
이런 테스트 프로젝트에선 큰 문제 없습니다.
설명은 그 수준이면 충분하고, 사실 그런 부분은 저한테 굳이 질문주실 필요도 없고
어차피 면접관이 만족하지 못하면 더 파고 물어봅니다.