유니티 에셋을 받아와서 Scene에 꺼내보면 Pivot이 중심이 아닌 다른 곳으로 되어있는 경우가 종종 있다.
일단 나같은 경우에는 에셋스토어에서 체스 에셋을 다운 받아 꺼내왔는데 중심이 바닥으로 되어 있었다.
체스를 두는 경우에는 Pivot이 바닥에 있으면 편하겠지만, 나는 물체를 들고 이동해야 하는 기능이 있기에 Pivot을 중심으로 옮기는게 좋을 것 같았다.
3D 툴을 다룰 줄 안다면 쉽게 해결할 수 있겠지만 모르는 분들이나 귀찮은 경우 사용할 수 있는 방법이다.
우선 내가 아는 방법은 총 두 가지가 있다.
부모 오브젝트 만들기
현재 퀸은 바닥에 Pivot이 있다.
이렇게 부모로 오브젝트를 한 번 감싸고 오브젝트의 위치를 원하는 Pivot값이 되도록 조정해주면 된다.
이렇게 사용하면 Pivot을 원하는 위치로 옮길 수 있게 된다.
이 방법은 Pivot을 바닥에서 중앙, 중앙에서 바닥 또는 완전 바깥에 두는게 가능해진다.
하지만 나같은 경우에 물체에 RayCast를 쏴서 맞은 오브젝트에 특정 스크립트가 있는 경우에 물건을 집도록 기능을 만들고 있었는데 부모 오브젝트에는 Collider가 존재하지 않아 GetComponentInParent 함수로 검사를 해야 헀다.
좀 찝찝해서 물체 자체의 Pivot을 중앙으로 옮기고 싶었다.
ProBuilder를 이용한 Center Pivot
Package Manager에서 다운 받을 수 있는 ProBuilder 패키지를 이용하는 방법이다.
현재 내가 제작 중인 게임에서는 ProBuilder를 이용해서 맵을 제작 중이였기에 이 방법을 사용했고, 사용하고 있지 않다면 기호에 맞게 사용하면 될 것 같다.
ProBuilder Window를 열고 오브젝트를 선택 후 ProBuilderize를 누른다.
ProBuilderlize 는 오브젝트를 ProBuilder에서 수정 가능한 오브젝트로 변환 시켜주는 기능이다.
그 후 바로 위에 있는 Center Pivot 버튼을 누르면 자동으로 중심을 찾아 Pivot을 옮겨주는 것을 알 수 있다.
끝
ProBuilder를 이용한 Centor Pivot 방법은 기호에 맞게 사용하자.
'게임 개발' 카테고리의 다른 글
LateUpdate가 중요한 이유 (0) | 2024.04.25 |
---|---|
Start vs Awake 확실하게 알고 가자 (0) | 2024.04.23 |
BoxCollider does not support negative scale or size. (0) | 2024.04.22 |
UnityEngine.Assertions 을 이용한 에러 검출 (0) | 2024.04.21 |