카테고리 없음

유니티 - Grid(그리드) 이동

bugmin 2024. 7. 2. 13:48

 

Grid Plane은 Y축에 대해 체크해야 땅에 그리드가 생기고

Opacity를 조절해 그리드를 선명하게 할지를 정한다.

 

 

파란색으로 Grid Visual 활성화가 돼야 아래와 같이 그리드가 표시된다.

 

 

Grid Snapping서 Grid Size를 키우면 그리드의 간격이 넓어진다.

 

기본설정은 1이지만 5로 늘리면

 

 

훨씬 넓어진 것을 볼 수 있다.

 

 

만일 해당 Grid Snapping 을 활성화(파란색)시키면

 

 

오브젝트 이동시 그리드 사이즈에 맞게 이동하는 것을 확인 할 수 있다.

 

주의

 

 

스냅 설정이 Local일 땐 사진과 같이 Grid Snapping은 활성화되어 있더라도 비활성화되기 때문에 반드시 Global 에서 사용해야 한다.

 

그리드 사이즈 말고도 오브젝트를 Ctrl(win)/Cmd(mac) 을 누른채 이동시키면 0.25 월드 유닛 단위대로 이동을 할 수 있다.

 

해당 수치는 아래에서 조정이 가능하다.

 

 

Increment Snapping서 기본적으론 0.25 월드 유닛 단위로 이동을 하는 것을 확인 가능하며

 

Move의 수치를 1로 조절하면 ctrl/cmd 이동 시 0.25 단위가 아니라 1 씩 이동할 것이다.

 

정리

 

Grid Snapping의 활성화 통해 그리드 사이즈에 맞게 씬 뷰에서의 오브젝트 이동이 가능하고

씬 뷰에서 Ctrl(win)/Cmd(mac)을 누른채 이동 시키면 Increment Snapping에서 설정한 사이즈(기본: 0.25)에 맞게 오브젝트 이동이 가능하다.

 

 

위의 내용을 활용하면 Grid Snapping 사이즈를 10으로 하고 사이즈가 9인 큐브를 만들어 이쁘게 배치할 수가 있다.

 

왜 사이즈가 9인가?

첫번째 큐브를 0,0,0 에 배치하면 그리드 선이 중앙에 오는데 중앙 기준 양옆은 각각 4.5의 길이를 가지므로 1의 빈공간을 적절히 두면서 배치가 가능하다.

 

 

이런식으로 만든 것을 좌표로 활용할 수도 있겠다. 

 

다만 유니티 3D 좌표이므로 (x, y) 좌표가 아닌 (x, z) 좌표임을 주의하자

 

참고로 오브젝트를 만들 땐 빈오브젝트 밑에 메쉬만 넣어주는 형태가 좋을 수 있다. TileMesh의 경우 Mesh와 머테리얼 정보만 들어가있다. 사이즈를 키울땐 TileMesh의 사이즈를 키웠다.

 

만일 그냥 메쉬나 스프라이트가 자식 형태가 아닌 부모에 바로 달려있다면 피봇의 중심이 원하지 않는 위치에 있을 수 있다. 만일 위와 같이 자식으로서 메쉬/스프라이트를 둔다면 그냥 그 자식의 위치만 조정하면 되니까 매우 편리하다.