Unity3D/Scene Navigation

Unity 3D Scene View Navigation

Soul-Learner 2014. 2. 19. 19:24

유니티 3D의 Scene 뷰에서 작업할 때 오브젝트를 이동, 확대/축소, 회전 등 다양한 네비게이션 방법을 알아본다


여기서는 Scene 뷰에 오브젝트를 보이도록 하는 가상의 카메라를 편의상 개발자 카메라라고 부른다. 게임뷰에 오브젝트를 보이도록 하는 카메라와는 분명히 다르며 개발할 때 Scene 뷰에 오브젝트를 나타내기 위해서만 사용되기 때문이다

아래에서 소개한 Scene 뷰 네비게이션 방법은 표면적으로는 오브젝트가 이동, 회전, 확대/축소되는 것으로 보이지만 실제로는 개발자 카메라의 이동, 회전, 확대/축소로 인한 상대적인 변화일 뿐이며 게임뷰 상에서는 아무런 변화가 없다.

다시 설명하자면, Scene View Navigation 은 개발자의 작업을 용이하게 하기 위한 수단이고 오브젝트를 바라보는 개발자의 관점을 변경하기 위한 조작이라는 것이며. 실제 게임을 하는 사용자의 관점과는 전혀 무관한 것이다.



1. Unity 3D 실행하고 아래에 제시된 방법으로 Scene 뷰에 Cube를 하나 생성한다




2. 확대/축소

Scene 뷰에 놓여진 Cube 가 너무 작아서 잘 보이지 않으면 마우스 휠을 앞뒤로사용하여 확대한다. 이 때 마우스 포인터는 Scene 뷰 내부에 있어야 하고 네비게이션 툴바에 있는 툴은 아무것도 선택하지 않아도 된다. 오브젝트가 실제 확대/축소되는 것이 아니라 개발자 카메라가 이동하기 때문에 상대적으로 오브젝트가 확대/축소되는 것이다.



3. Pan 툴



Pan 툴을 선택하고 ALT+Scene뷰 드래그하면 개발자 카메라가 Scene뷰 주위의 괘도를 따라 원운동하면서 이동하기 때문에 오브젝트 주위를 회전하는 것처럼 보인다. 이때 Pan 툴을 사용하여 개발자 카메라가 좌우상하로 이동한 상태에서 이 방법을 적용하면 오브젝트가 회전하면서 원운동하는 효과가 나타나게 된다. 그러므로 오브젝트를 선택하고 [ GameObject > Align View to Selected ] 를 선택하면 개발자 카메라가 월드좌표 상의 Z축방향과 정렬된 상태에서 선택된 오브젝트를 정면으로 바라보게 된다. 이렇게 정렬된 상태에서 개발자 카메라가 괘도운동하면 오브젝트는 제자리에서 회전하는 것처럼 보이게 된다.


Pan 툴(손바닥 모양)을 선택하지 않고 마우스 휠을 누르면서 드래그해도 동일한 기능이 작동하고 이 때 특히 편리한 점은 현재 선택된 툴과 상관없이 마우스 휠을 누르고 드래그하는 순간에는 자동으로 Pan툴이 선택되는 것을 볼 수 있다



4. ALT + 마우스 우측 + 전후(좌우) 드래그

네비게이션 툴바의 선택과 상관없이 확대/축소가 가능하다. Pan(손바닥 모양) 툴이 자동으로 돋보기 모양으로 변하면서 확대/축소 기능이 작동한다. 마우스로 전후 드래그해도 되고 좌우 드래그해도 동일하게 확대/축소기능이 작동한다


마우스 우측 + W : 확대(개발자 카메라 전진이동)

마우스 우측 + A : 개발자 카메라 좌측이동(오브젝트는 우측 이동)

마우스 우측 + S : 축소(개발자 카메라 후진이동)

마우스 우측 + D : 개발자 카메라 우측이동(오브젝트는 좌측 이동)

마우스 우측 + Q : 개발자 카메라 아래로 이동(오브젝트는 위로 이동)

마우스 우측 + E : 개발자 카메라 위로 이동(오브젝트는 아래로 이동)



5. ALT + 마우스 왼쪽 + 드래그

오브젝트가 마우스 드래그 방향으로  제자리에서 회전하는 효과를 낸다



6. Hierarchy 뷰에서 오브젝트 이름 더블클릭

Pan 툴이나 이동툴을 이용하여 오브젝트가 Scene 뷰를 벗어나 보이지 않는 상태라면 Hierarchy 뷰에서 해당 오브젝트의 이름을 더블클릭하면 개발자 카메라가 해당 오브젝트로 이동하여 Scene 뷰의 중앙에 오브젝트가 위치하게 된다. 예를 들어, 다수개의 오브젝트가 Scene 뷰에 있을 때 화면에서 일부의 오브젝트가 벗어나 있을 때 Hierarchy 뷰에서 해당 오브젝트의 이름을 더블클릭하면 개발자 카메라가 그 오브젝트로 이동하여 화면 중앙에 보이도록 한다



7. 화살표 키(좌우상하)이용 X-Z 평면 상에서 개발자 카메라 이동

화살표 상: 개발자 카메라 전진 (오브젝트는 확대됨)

화살표 하: 개발자 카메라 후진 (오브젝트는 축소됨)

화살표 좌: 개발자 카메라 좌로 이동 (오브젝트는 우측 이동)

화살표 우: 개발자 카메라 우로 이동 (오브젝트는 좌측 이동)



8. Scene 뷰의 방향 표시 기즈모를 이용한 개발자 카메라 원운동

기즈모의 상하좌우로 난 가지를 클릭하면 해당 방향으로 개발자 카메라가 회전하면서 오브젝트가 회전 및 이동하는 효과를 낸다.



9. 오브젝트를 2차원 평면에 투영하는 방법의 전환

Scene 뷰의 방향 기즈모 아래에는 현재 오브젝트 투영법이 오소그래픽 투영법인지 퍼스펙티브 투영법인지를 나타내는 기호가 있다. 이 기호를 클릭할 때마다 투영법의 상호전환이 가능하다

기호는 다음과 같은 모양이며 왼쪽은 정사영 투영(Orthographic Projection)을 의미하고 우측은 원근 투영(Perspective Projection)을 나타낸다

참고로 정사영 투영법에서는 오브젝트와 카메라 사이의 거리에 따른 원근법을 적용하지 않기 때문에 먼곳에 있는 오브젝트도 가까운 곳에 있는 오브젝트와 크기가 동일하게 나타난다. 반면에 원근 투영에서는 거리가 멀 수록 작게 보이는 효과가 적용된다




10. 개발자 카메라가 정지한 상태에서 제자리 회전

툴바의 선택과 상관없이 마우스 오른쪽을 누르고 Scene 뷰 상에서 드래그하면 그 방향으로 개발자 카메라가 제자리 회전하므로 오브젝트는 반대방향으로 괘도상을 운동하는 것처럼 보인다



Scene View Navigation에 대한 Unity Manual 참조

Help > Unity Manual 선택, Scene View Navigation 으로 검색하면 상세한 설명을 볼 수 있다