Ad Block 한번만 꺼주시면 안될까요..?
게임 개발/유니티

유니티) Rigidbody로 캐릭터 회전(축)/위치(축) 고정하기. (Constraints)

UniCoti(유니코티) 2023. 4. 3.

이번글에선 3인칭 움직임을 가지는 거의 모든 게임에서

쓰이는 기능. 회전/위치 축을 고정하는 법에 대해 알아보겠다.

이 기능의 이름은 Constraints로, 해석하면 강제 혹은 제약이라는

을 가지며 앞서 말했듯이 물체의 위치나 회전을 강제해 준다.

그럼 바로 세팅법을 소개하겠다.

 

사용법

먼저, Constraints를 사용할 물체가 있어야 한다.

대부분의 경우 플레이어가 되고,

그중에서도 인간 형태의 메쉬가 주로 대상이 된다.

 

일단 넘어지는 현상이 일어나는 이유가 주로 Rigidbody이기에

원하는 오브젝트에 Rigidbody를 추가해 주어야 한다.

인스펙터 창에서 Add Component 버튼으로 추가할 수 있다.

그럼 컴포넌트의 변수들은 이런 식으로 정렬되게 되는데,

밑에 보면 날개가 있는 메서드가 있다.

이중에 앞서 말한 Constraints의 날개를 펼쳐주자.

Constraints를 펼치면 이렇게 Freeze Position/Rotation이 나오는데,

원하는 축을 고정시켜 주면 된다. 3인칭 인간형 캐릭터의 경우,

x축과 z축의 회전을 고정해 주면 앞, 옆으로 넘어지는 걸 방지해 준다.


Constraints를 세팅해 줌으로써 캐릭터는 지형에 따라 물리 효과를 받아도

넘어지지 않게 되는 것이다. 이러한 세팅이 없다면, 플레이어는 

계단만 올라가도 넘어지고, 뭔가를 그냥 밟는 순간 넘어질 것이다.


사실 이 글을 안 적었을 줄은 모르고 있었는데,

검색해 보니 Constraints에 관한 글을 적은 적이 없어

빠르게 적어봤다. 유용히 쓰기 바란다.

 

유니티 협력 링크(어필리에이트)


이상으로 도움이 되었길 바라며,

 

끝.

댓글

💲 추천 글