Unreal5/Gameplay Framework

[Character] 캐릭터 제작

taene_ 2024. 7. 23. 21:33

폰의 기능과 설계

  • 폰은 액터를 상속받은 특별한 액터이며, 플레이어가 빙의해 입출력을 처리하도록 설계되어 있다.
    • 폰에 카메라를 부착하면 폰이 바라보는 세상이 플레이어 화면에 등장하고,
      폰에 입력을 지정하면 입력이 전달되어 폰을 움직이도록 조종할 수 있다.
  • 폰은 길찾기를 사용할 수 있으며, 일반적으로 3가지 주요 컴포넌트로 구성된다.
    • 기믹과 상호작용을 담당하는 충돌 컴포넌트 (RootComponent)
    • 시각적인 비주얼을 담당하는 메시 컴포넌트
    • 움직임을 담당하는 무브먼트 컴포넌트
      • 트랜스폼이 없이 기능만 제공하는 컴포넌트: 액터 컴포넌트
      • 트랜스폼이 있는 컴포넌트: 씬 컴포넌트

 

캐릭터의 기본 구조

  • 캐릭터는 인간형 폰을 구성하도록 언리얼이 제공하는 전문 폰 클래스를 의미한다.
  • 캐릭터는 3가지 주요 컴포넌트로 구성된다.
    • 기믹과 상호작용을 담당하는 캡슐 컴포넌트 (RootComponent)
    • 애니메이션 캐릭터를 표현하는 스켈레탈 메시 컴포넌트
    • 캐릭터의 움직임을 담당하는 캐릭터 무브먼트 컴포넌트

 

입력시스템의 동작 방식

  • 플레이어의 입력은 컨트롤러를 통해 폰으로 전달된다.
  • 입력을 컨트롤러가 처리할 수도 있고 폰이 처리할 수도 있는데, 일반적으로는 폰이 처리하도록 설정한다.
    • ex) GTA같은 다양한 사물에 빙의하는 게임의 경우 폰이 유리하다.

 

언리얼 5.1부터 향상된 입력시스템

  • 사용자의 입력 설정 변경에 유연하게 대처할 수 있도록 구조를 재수립했다.
    • 그 전에는 플레이어의 input을 설정하는 과정에서, 처리하기 전에 input을 설정하다 보니 고정되어 있기 때문에 나중에 사용자의 입력 설정 변경에 유연하게 대처할 수 없었다.
    • 플레이어의 최종 입력을 게임 로직에서 진행하도록 시스템의 구조를 변경했다.
  • 사용자 입력 처리를 네 단계로 세분화하고 각 설정을 독립적인 애셋으로 대체했다.

 

향상된 입력시스템 동작 구성

  • 사용자의 입력 데이터를 최종 함수에 매핑하는 과정을 체계적으로 구성
  • 플랫폼에 따른 다양한 입력 장치의 설정
    • ex) 게임패드용 입력 매핑 컨텍스트, 키보드용 입력 매핑 컨텍스트
  • 입력 값의 변경
    • ex) AD/WS 입력 값을 Y축과 X축으로 변경, 값 반전의 처리
  • 이벤트 발생 조건의 상세 설정
    • ex) 일반 버튼인가? 축 이동인가? 일정 이상 눌러야 하는가?