요즘 Blender를 사용해서 모델링을 하고 있는데, 좌표계 개념이 헷갈려서 글을 작성하여 정리하고자 한다. 

 

좌표계는 크게 두가지로 나눌 수 있다.

  • Left Handed Coordinate System 왼손 좌표계
  • Right Handed Coordinate System 오른손 좌표계

Blender는 이 중 오른손 좌표계에 속하는 프로그램이다. 보통 OpenGL을 기반으로 하는 프로그램이 주로 속한다.

(Direct X를 기반으로 하면 왼손 좌표계를 주로 사용한다. - Ex. 언리얼엔진)

 

Coordinate System

docs.microsoft.com

위의 그림처럼, 좌표계의 이름은 손에서 엄지와 검지, 중지의 방향과 손가락이 말린 방향으로 좌표축을 구분하기 위해 명칭을 '왼손'과 '오른손'으로 한 것이다. (예전에 배웠던 물리 이론 중 오른손 법칙 등과 같다)

검지(Y축)를 중심으로 중지(Z축)의 방향이 내 쪽(right)을 보는지, 바깥 쪽(left)을 보는지를 보면 된다. 

 

Left-handed Coordinate System Vs. Right-handed Coordinate System 

Left-Hand Vs. Right-Hand

손 모양을 직접 해보면 알 수 있는데, 손가락이 말아지는 방향이 축을 따라 회전하는 방향이 된다.

위 그림처럼 왼손 좌표계는 시계방향(clockwise)으로, 오른손 좌표계는 반시계방향(counterclockwise)으로 돌게 되는 것을 확인할 수 있을 것이다.

Right-handed, Z up
blender's coords

블렌더의 경우 위의 모양과 같은 방향이므로 거꾸로 뒤집은 형태의 회전축을 따라 회전하게 된다. (이 부분을 신경쓰지 않고 무작정 회전하다가 거꾸로 회전하게 되는 실수가 발생하고는 했다.)

 

Example

다음은 블렌더를 통해 만든 간단한 예시이다. (이러한 형태의 원뿔이 있다고 했을 때, 각각을 x,y축에 대해 rotation)

z축은 원뿔이기 때문에 변화 없음.

한번 숙지하고 나면 어렵지 않지만, 가끔 헷갈리는 부분이라 정리해두었다. 

반응형

'Lab Study > Computer Graphics' 카테고리의 다른 글

[Data Structure] K-D Tree  (0) 2021.07.10

+ Recent posts