티스토리 뷰

반응형

 

 

 

 

안녕하세요. 쉽게 배우는 코딩 베오코입니다.

캐릭터 컨트롤러란 무엇인 지 한 번 알아보도록 하겠습니다.

 

1 ) 캐릭터 컨트롤러란?

- 캐릭터 컨트롤러는, 리지드 바디를 다루지 않습니다. 그리고 충돌에 의한 움직임을 다루기 쉽게 해줍니다.

즉 이 말은 무엇이냐면, 캐릭터 컨트롤러라는 컴포넌트 하나만 있다면, 리지드 바디 컴포넌트가 없어도 물리 연산이 가능해지고

캐릭터 컨트롤러는 default로 Capsule Collider로 이루어져 있기 때문에 굳이 충돌체를 따로 붙여 줄 필요가 없습니다.

 

하지만! 유니티에서는 플레이어 캐릭터가 물리에 의해 영향을 받도록 하고 싶다면

캐릭터 컨트롤러 대신 RigidBody를 사용하는 것이 좋다고 권장되고 있습니다.

 

2 ) 캐릭터 컨트롤러 property

- Slope Limit : 콜라이더가 명시 된 값보다 작은 경사의 slope만 오르도록 제한합니다.

 

- Step Offset : 명시 된 값보다 계단이 땅에 가까울 경우에만 캐릭터가 계단을 오릅니다.

이 값은 캐릭터 컨트롤러의 높이보다 커서는 안됩니다. 값이 더 크면 오류가 발생합니다.

 

- Skim width : 두 콜라이더가 서로 스킨의 너비 만큼 관통할 수 있습니다. 스킨의 너비가 클수록 지터링이 감소합니다.

스킨 너비가 작을 경우엔 캐릭터가 움직이지도 않을 수 있습니다. 스킨 너비 값을 radius의 10%로 설정하는 것이 좋습니다.

 

※ 지터링이란 ? 쉽게 설명해서, 덜덜 떨리는 현상이라고 생각하면 될 것.

 

- Min Move Distance : 캐릭터가 지정한 값보다 낮게 움직이려고 할 경우, 아예 움직이지 않게 된다.

지터링을 줄이기 위해, 이 옵션을 사용할 수 있지만, 대 부분의 경우는 값을 0으로 두어야 한다.

 

- Center : 월드 공간에서 캡슐 콜라이더를 offset하며, 캐릭터의 pivot에는 영향을 주지 않는다.

 

- Radius : Capsule Collider의 반지름 길이. 본질적으로는 콜라이더의 너비를 뜻함.

 

- Height : 캐릭터의 Capsule Collider 높이. 이 값을 변경하면 콜라이더가 Y축을 따라 +,- 방향으로 Scale한다.

 

3 ) 캐릭터 컨트롤러의 멤버 함수 및 변수

- 이 부분은, 유니티 API 문서에 설명이 잘 되어 있기 때문에, 해당 문서를 보시면서 파악하시는 것을 추천드립니다.

캐릭터 컨트롤러 <- 링크를 클릭하시면 API 문서로 넘어갑니다.

 

 

지금까지 캐릭터 컨트롤러에 대해서 알아봤습니다.

일단 기본적인 내용으로만 글을 올렸기 때문에, 조금 더 전문적으로 알고 싶으시다면

유튜브나 다른 블로그를 더 참조해서 공부하시는 것을 추천드립니다.

 

감사합니다!

 

 

 

반응형
댓글
반응형
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2025/05   »
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31
글 보관함