CharacterController

Clear·2025년 6월 12일

Unity Docs

CharacterController

비물리적 기반의 충돌 감지 및 이동 처리 전용 컴포넌트 클래스입니다.

Point

  • Collider 기반으로 자체적으로 충돌 모양을 정의함 capsule 형태 고정
  • Kinematic 기반으로 Rigidbody와 달리 물리 엔진 힘에 반응하지 않음. 외부 힘 적용 불가
  • 이동 함수 제공 Move, SimpleMove
  • 지형/계단/미끄럼/움직임 중심을 처리 가능
  • 이동만 제공하며 중력/점프/힘은 사용자가 코드로 제어
  • Rigidbody 없이 충돌만 처리되므로 성능이 우수하고 안정적
  • 땅에 닿았는지 여부 확인 가능 자동 판정

이를 통해 물리 계산을 사용하지 않아 경량 시스템 기반이며 사용자가 직접 제어하기 때문에 제어권과 정밀한 제작이 가능하다.

주요 Functions & Variables

Move

public CollisionFlags Move(Vector3 motion)

Paramter

  • motion
    캐릭터를 이동시킬 거리와 방향

이동 거리 기반으로 이동하며 중력이 작동되지 않는다.

Simple Move

    public bool SimpleMove(Vector3 speed)
  • Speed
    캐릭터를 이동시킬 방향과 속도

    속도 기반으로 이동하며 중력이 자동 적용된다.
    Time.deltaTime 도 자동으로 계산한다.

Variables

public extern bool isGrounded

캐릭터가 땅에 닿았는 지 판단하는 변수.
Move 호출 후 땅에 닿았는지 판단 / SimpleMove 에서는 이 값이 즉시 갱신되지 않음

profile
Programmer

0개의 댓글