언어:
페이지 정보
엔진 버전:
언리얼 엔진

컨트롤러

언리얼 엔진

Controller (컨트롤러)는 Pawn (폰) 또는 Character (캐릭터)처럼 폰에서 파생된 클래스를 빙의(possess)하여 그 동작을 제어할 수 있는, 눈에 보이지는 않는 액터입니다. PlayerController (플레이어 컨트롤러)는 사람이 조종하는 폰에 사용되는 반면, AIController (AI 컨트롤러)는 조종하는 폰에 대한 인공지능을 구현하는 데 사용됩니다. 컨트롤러는 Possess 함수로 폰의 제어권을 획득하며, Unpossess 함수로 해제합니다.

컨트롤러는 제어중인 폰에 발생하는 다수의 이벤트에 대한 알림을 받습니다. 이로써 컨트롤러는 그 이벤트에 대해 반응하여, 해당 이벤트를 가로채고 폰의 기본 동작을 대체하는 동작을 구현할 수 있는 기회를 얻습니다. 컨트롤러는 주어진 폰보다 먼저 틱을 시켜 인풋 처리와 폰 이동 사이의 지연시간을 최소화하는 것이 가능합니다.

기본적으로 컨트롤러와 폰에는 1:1 대응 관계가 있습니다. 즉 각 컨트롤러는 어느 때고 하나의, 단 하나의 폰만을 제어한다는 뜻입니다. 이는 대부분의 게임에 적합한 것이나, 실시간 전략 게임과 같은 특정 유형의 게임에서는 다수의 개체를 한 번에 제어할 수 있어야 하니 약간의 조정이 필요할 수는 있습니다.