블렌더/블렌더 팁

[blender tips] 05. Origin 설정하기 (2)

노루3759 2022. 10. 7. 00:33
반응형

origin을 이동하는 몇 가지 방법이 더 있다. 

 

origin 직접 이동하기

블렌더 3d viewport에서 우측 상단에 options라는 메뉴가 있다. 여기서 affect only  >>>  origins라는 항목을 선택하면 오브젝트를 선택했을 때 origin 주위로 origin의 x, y, z좌표축이 나타나는 걸 볼 수 있다. 

이 옵션을 켜면 오브젝트를 수정하듯이 origin의 위치를 직접 수정할 수 있다. 

 

이제 오브젝트를 선택한 상태에서 G, R, S키로 오브젝트를 동작하면 오브젝트 대신 오브젝트의 origin이 이동, 회전, 크기 조정 된다. (origin자체는 한 점이니 스케일을 조절해도 origin자체의 크기가 커지거나 하지는 않는다.)

오브젝트 조절하듯이 디테일하게 origin의 위치, 회전정도를 조절할 수 있다.

 

스냅 역시 잘 동작한다. 아래 그림처럼 origin을 움직이고 싶은 오브젝트를 선택하고 버텍스 스냅을 켠다. origin을 가져가고 싶은 위치의 버텍스로 이동하면 스냅 되어 잘 달라붙는 걸 확일할 수 있다. edge, face에도 스냅이 잘 작동한다.

회전도 origin을 중심으로 회전한다.

 

 

 

이 방법은 origin위치를 움직일 수도 있지만, origin의 회전값을 직접 조절할 수 있다는 게 큰 매력이다.

아래 그림에서 화살표의 local좌표를 표시하였다.

affect only  >>>  origins을 켜고 이 화살표 오브젝트의 origin을 회전하면 오브젝트의 local좌표계가 origin의 회전을 따라 변한다는 걸 알 수 있다.

 

참고로 이 화살표(정확한 명칭은 gizmo)를 보고 싶다면 viewport gizmos 메뉴에서 move 항목을 체크해 주면 된다.

 

 

 

 

아래 그림의 local좌표를 갖는 1번 화살표를 복사해서 경사면에 배치했다. 2번 화살표의 local좌표계를 보면 알 수 있듯이, 2번 화살표 오브젝트는 경사면의 각도만큼 (y축으로 -48도만큼) 회전했다.  하지만 여전히 local좌표는 살아있다. 2번 화살표의 local x 축은 여전히 1번 화살표처럼 화살표의 머리 방향을 가리킨다.

 

그러면 오브젝트의 local좌표를 아래 그림처럼 사용할 수 있다. 

단축키 G를 누른 후 X를 한 번 누르면 global X축을 사용하고, X를 두 번 누르면 local X축을 사용할 수 있다. Y, Z 축도 마찬가지로 사용할 수 있다. (좌표계를 local로 두면 local이 먼저 나오고 두 번 눌렀을 때 global 축이 나온다.)

 

이때 ctrl + A를 눌러 Rotation을 apply 하면 아래 그림처럼 화살표의 local좌표가 global 좌표계로 초기화된다. 

오른쪽에 또 하나 배치해둔 3번 화살표의 local좌표계와 비교해보자. 2번 화살표가 global좌표계와 동일한 상태로 초기화된 걸 알 수 있다. 이렇게 오브젝트가 기존의 local 좌표계를 잊어버리는 경우가 종종 있다. 이럴 때는 오브젝트의 local 좌표를 사용하지 못해 불편한 경우가 발생한다.

 

 

 

apply 명령은 어떤 방법으로 변형된 오브젝트의 변형상태를 월드 좌표계를 기준으로 재설정하는 기능이다.

location, rotation, scale모두 적용시킬 수 있으며, 각각이 값이 적용되면 오브젝트는 월드 좌표계에서 기존의 이동, 회전, 스케일 값 등을 잊어버리고 현재 변형된 상태를 월드 좌표계의 기본값이라고 재설정한다.

 

기본 원숭이를 XYZ 축으로 각각 변형시켰다. 이 원숭이는 xyz 축으로 각각 2m, 1m, 3.5m만큼 이동했고, 20도, 20도, 12도만큼 회전했으며, 3배, 1.2배, 2배만큼 스케일이 적용된 상태, 즉 기본 상태 [ location (0,0,0), rotation (0도 , 0도 , 0도), scale (1배, 1배, 1배) ]에서 변형된 상태이다. 이때 location, rotation, scale을 apply 하면 블렌더는 이제 이 변형된 오브젝트를 변형했다고 인식하지 않고, 이 자체를 오브젝트의 기본 상태라고 인식한다.

이 변형된 상태를 월드 좌표계의 기본값인 location (0,0,0), rotation (0도 , 0도 , 0도), scale (1배, 1배, 1배)로 재설정하는 것이다.

 

 

또는 아래 그림처럼 오브젝트 모드가 아닌 edit mode에서 회전하는 경우 local좌표가 생각과는 다르게 바뀔 수 있다. 이 경우는 local 좌표가 달라졌다기보다 사실 local 좌표 자체는 변화가 없는데 메시만 회전시켜 버리니 local 좌표가 달라진 것 같은 느낌을 받는 것이지만... 아무튼 중요한 것은 local 좌표를 아래 그림처럼 메시에 맞춰 직관적으로 만들어 주고 싶다는 것이다.

 

 

아래 그림처럼 랜덤 하게 회전된 local좌표를 오른쪽처럼 정렬해보자. origin을 오브젝트처럼 움직이고 회전시킬 수 있다는 걸 이용해서 정렬시킬 것이다.

 

먼저 snap에서 아래 그림처럼 face >>> align rotation to target 항목을 켜준다.

그다음 options >>> origins 항목을 켜서 이동시키면 origin을 마치 오브젝트처럼 이동할 수 있다. 

기준이 될 것 같은 면에 origin을 이동시켜 준다. align rotation to target으로 스냅이 잡혀있으므로 origin의 z 축이 면의 법선 방향으로 정렬되었다. 이 상태에서 스냅을 끄고 이 origin의 z 축을 기준으로 회전시켜 나머지 x, y축을 맞춰 주면 된다. 

이때 SHIFT키를 누르고 회전하면 더 천천히 회전할 수 있고, increment snap을 켜고 affect를 rotate로 설정 주면 5도씩 회전할 수 있다. increment + affect에서 rotate가 활성화된 상태에서 shift키를 누르면 1도씩 회전한다. 그리고 set origin 명령을 사용해서 오브젝트의 중심으로 origin을 이동시키면 origin도 정렬되고 local 좌표도 정렬된다. 

 

 

좀 더 정확하게 origin을 정렬하고 싶다면 먼저 정렬의 기준이 되는 면을 정해야 한다. 

아래 그림처럼 edit mode에서 기준이 될 면을 정하고 + 버튼을 눌러주면 이제 이 face를 기준으로 하는 좌표계를 사용할 수 있다. 새로 생긴 face 좌표계를 선택하면 아래 그림처럼 face좌표계를 확인할 수 있다. 

이 좌표계의 이름도 바꿀 수 있고 옆에 x표를 눌러 삭제할 수도 있으니 마음에 드는 좌표계를 등록해 놓고 사용해도 좋다.

 

오브젝트 모드에서 origin이 선택된 상태에서 아래 그림처럼 object  >>>  transform  >>>  align to transform orientation을 선택해 준다. 그러면 face의 좌표계에 맞춰 origin을 정렬해준다. align to transform orientation 명령은 선택한 오브젝트를 좌표축에 맞춰 정렬해주는 기능을 한다. origin도 마찬가지로 face좌표를 따라 정렬되었다. 이제 origin을 정확하게 90도 단위로 회전시킬 수 있게 되었다. 이런 방식으로 origin도 오브젝트처럼 이동, 회전할 수 있다.

 

 

options 항목은 블렌더 오른쪽 사이드바의 Tool 항목에서도 같은 옵션을 확인할 수 있다. 이 사이드 메뉴바는 단축키 N으로 켜고 끌 수 있다. 그리고 이 options메뉴는 오브젝트 관련 옵션들을 보여준다. edit mode에는 edit mode 관련한 다른 메뉴를 보여준다. 

 

 

 

 

 


05. Origin 설정하기 - 연결된 글입니다. 

 

05. Origin 설정하기 (1)

05. Origin 설정하기 (2)

05. Origin 설정하기 (3)

05. Origin 설정하기 (4)


 

반응형