본 챕터에서는 앞서 만들었던 게임의 질을 높이기 위해 대미지 이펙트, 결과화면 등을 구현한다.
우선 Damage를 입었을 때 캐릭터의 몸이 보라색으로 변하게끔 Material을 조정하였으며, 플레이어 Blueprint에서 set material을 통해 일시적으로 변하게 지정하였다.
위의 그림은 캐릭터의 블루프린트이다.
게임을 실행해보면 위의 그림과 같이 데미지를 입었을 때 보라색으로 변하는 것을 확인할 수 있다.
결과 화면은 일반 게임에서도 많이 접할 수 있듯이 아이템을 다 모으면 게임 클리어 표시나 체력이 0이 되면 게임 오버가 뜨는 화면이다.
게임 클리어나 게임 오버 이미지를 불러와 Material을 생성한다. 그리고 세부탭에서 Blend Mode를 설정한다. Blend Mode는 액터 전체를 반투명하게 하거나 그물망과 같은 액터로 설정할 수 있다. Blend Mode의 종류는 아래와 같다
게임 클리어, 게임 오버 등 화면에서는 Translucent를 사용한다.
UMG를 통해 UI를 설정하였다. Game Clear또한 동일하게 뜨게끔 하였다.
꽃을 다 먹었을 때 뜨는 화면이다.
AI에게 부딪혀 체력이 0일때 뜨는 화면이다.
BGM을 넣기 위해 사운드 큐 애셋을 사용한다. 사운드 큐 애셋은 음성 재생 동작을 정의하기 위한 애셋이다.
기존 프로젝트에 존재한다. 본 프로젝트에서는 이것을 이용해 BGM을 설정한다. 추가로 언리얼 엔진에서는 사운드 파일로 WAV 형식 데이터만 사용할 수 있다.
앞서 만든 프로젝트를 패키징하여 누구나 게임을 즐길 수 있게끔 한다.
패키징을 진행하고 난 후 EXE 파일을 실행하면 게임이 시작된다.
무슨 이유 때문인지 잘 모르겠지만 패키징에 자꾸 실패해서 원인을 찾지 못했다. 게임 내 문제같진 않고, 내 컴퓨터 문제로 인해 생긴 오류였다.
이번 책을 정독하고 따라가면서 언리얼 엔진에 대해 기초적인 지식을 공부하였다. 코드를 직접적으로 다루지 않고 이벤트 그래프를 통해 모든 구현을 진행하다보니 처음에는 적응하기 힘들었지만, 게임을 직접 만들면 금새 적응할 것이라 예상한다. 복잡한만큼 게임이 자연스럽게 진행되는 것 같았다.
여태 연습한 프로젝트는 Github에 올렸다.