Unreal Engine, Game Feature 추가하기

Experience 모드를 지정한 상태로 게임의 디테일한 설정할 수 있도록 Game Feature를 추가한다.


Game Feature 아래에 Data Asset 생성

WarriorCore Content 플러그인이 생성한 상태다. 그리고 별도의 WarriorCore 이름의 Game Feature Data 리소스가 필요하다.

  • Content Browser 탐색기에서 Plugins > WarriorCore Content 마우스 우클릭
  • Add/Import Content > Miscellaneous > Data Asset 클릭한다.
  • Game Feature Data 를 검색하여 선택한다.
  • 생성한 Asset를 클릭하여 이름변경(F2단축키)은 WarriorCore로 지정하도록 한다.
  • 커서를 가져다두면 GameFeatures.GameFeatureData 생성한 객체로 확인할 수 있다.
  • 해당 Asset를 더블 클릭한다.
💡
GameFeature 플러그인을 생성하면 해당 리소스가 이미 존재하기도 한다. 있다면 그것을 사용한다.
  • 화면과 같이 새 편집기가 열렸는지 확인.
  • WarriorCore 에셋 화면 Current State 항목을 Active로 클릭한다.

Game Feature 역할

새로 열린 편집기에서 디테일한 Feature State와 Game Feature에 대한 설정을 확인할 수 있다. Game Feature 기능은 초기에 실행할 때 어떤 일들을 시작해야하는지 설정할 수 있다.

Game Feature > Action

  • 게임 시작시 캐릭터 카메라를 어디를 바라봐야하는지
  • 게임 시작시 몬스터는 어디에 있어야하고, 몇마리가 있어야하는지

Game Feature > Asset Manager

  • 우선적으로 로딩되야 하는 에셋 리소스를 정의한다.

Game Feature WarriorCore를 실행하면 키보드 마우스 입력받기

앞 편집기에서 Game Feature에 대해 간략한 설명을 하였다.
이제부터 이 WarriorCore 에셋을 실행할 때 Game Feature로 무엇을 할지 정하도록 할 것인데, 먼저 Actions 에서 키보드 / 마우스를 받도록 설정할 것이다.

  1. Game Feature > Actions 항목 [+] 버튼을 클릭하여 사용할 객체를 늘리도록 한다.
  2. 그리고 아래 항목이 추가로 생성된 것을 확인하면 Game Feature > Actions > index [0] 까지 펼친 다음 [Add Input Mapping] 선택하도록 한다.
  3. Game Feature > Actions > index [0] > Input > Input Mappings 항목에서 [+] 클릭하여 객체 추가
  4. Game Feature > Actions > index [0] > Input > Input Mappings > Index [0] > Input Mapping 까지 펼쳐야 컨트롤러 매핑을 선택할 수 있다. "IMC_Default"를 선택하도록 한다.

게임 시작시 GamePlay 환경 설정

Game Features To Enable

이전 시간에 만든 플러그인에서 Experience 클래스를 찾도록 한다.

  • Experience는 "B_Experience_DebugGame" 이름으로 클래스로 되어있다. 해당 클래스를 더블 클릭한다.
  • 이제 새 창으로 "B_Experience_DebugGame" 언리얼 에디터가 열릴 것이다.
Lyra Experience Definition 상속을 받은 Experiences 클래스
  • Experience 클래스는 이 게임이 시작할 때 플레이를 어떻게 할 것인지 디테일한 설정을 할 수 있다.
  • 메인화면 Gameplay > Game Features to Enable > Index[0] 항목을 앞서 생성한 "WarriorCore" 입력하여 로딩 할 수 있게 해준다.

Default Pawn Data 샘플

Pawn 은 게임 시점을 따라가는 주인공을 가리킨다.
Lyra 샘플 공용 폴더에 있는 SimplePawnData 를 선택하도록 한다.
실제 Lyra의 SimplePawnData 를 살펴보면 스킨 에셋도 있고, 스킬셋과 입력 시 주인공 행동, 카메라 시점 등을 미리 정의한 것을 확인할 수 있다.

SimplePawnData Asset