캐릭터 시스템에서 캐릭터의 이동과 행동을 제어하는 중심 클래스인 CharacterController
에 대해 함께 살펴보겠습니다.
이 클래스는 실제 플레이어나 NPC가 어떻게 움직이고, 어떤 애니메이션을 재생할지를 담당하는 캐릭터 컨트롤의 기본 베이스 클래스입니다.
📚 클래스의 위치
이 클래스는 MonoBehaviour
를 상속받으며, 게임 오브젝트에 붙는 컴포넌트 형태로 동작합니다.
다만 중요한 점은 이 클래스가 단독으로 사용되지는 않는다는 것입니다.
CharacterBase
를 기반으로 하는 Player
, Npc
, Monster
캐릭터에 실제로 행동을 부여하기 위해 별도의 컨트롤러 클래스들이 이 클래스를 상속받습니다.
예를 들면 다음과 같습니다:
CharacterController → ControllerPlayer
CharacterController → ControllerNpc
이러한 구조를 통해, 모든 캐릭터가 공통적으로 수행해야 하는 동작은 CharacterController
에 정의하고, 각 캐릭터의 고유한 행동은 개별 컨트롤러에서 확장하는 방식으로 구성됩니다.
🧠 주요 역할
그렇다면 이 CharacterController
클래스는 어떤 기능을 제공할까요?
ICharacterAnimationController
인터페이스를 통해 실제 애니메이션을 재생합니다.🔧 핵심 메서드