Unreal Engine/프로젝트

UnrealEngine4 - 레이싱 게임 제작

GitHubSeob 2022. 1. 17. 02:46

다운로드 링크

https://drive.google.com/file/d/16uAH7FuNVR21DVNgzJBqnMgYbDYV-rFn/view?usp=sharing 

 

RacingGame.zip

 

drive.google.com

 

게임 - 비히클 모드를 기반으로 제작했다.

블루프린트로 모든 코드를 작성했다.

화면은 총 다섯 가지로 구성했다.

차량 에셋은 마켓플레이스에 있는 무료 차량을 적용했다.

 

1. 메인 메뉴

exe파일을 실행하면 뜨는 화면.

Play버튼을 누르면 게임 화면으로 넘어간다.

Option버튼을 누르면 옵션 화면으로 넘어간다.

 

2. 옵션 메뉴

키를 바꿀 수 있는 화면이다.

원하는 기능을 누르고 바꾸고 싶은 키를 누르면 키가 추가가 된다.

 

3. 게임 화면

맵은 하나로 구성하였고 간단한 원형 서킷이다.

시작을 하면 3초 동안 아무것도 할 수 없다.

3초 후에 게임이 시작되며 타이머가 시작된다.

 

화면 구성은 게임 진행시간을 알려주는 Time,

현재 LAP 타임을 알려주는 LAP,

최고 기록을 알려주는 Best LAP,

현재 몇 바퀴를 돌았는지 알려주는 LAP,

부스터 게이지,

RPM에 기반한 기어와 속력을 알려주는 계기판이 있다.

 

기능

- 드리프트: 브레이크를 누르면 드리프트가 된다. (+스키드 마크)

깔끔하게 하고 싶었지만 능력 부족으로 인해 부자연스러움이 있을 수 있다.

브레이크를 누르게 되면 부스터 게이지가 증가된다.

 

- 부스터: 왼쪽 Ctrl을 누르는 동안 속력이 빨라지는 부스터 기능이 켜진다.

부스터를 사용하면 화면 왼쪽 하단에 있는 게이지가 점점 줄어든다.

 

효과음

- 게임 시작 카운트다운

- LAP 증가 효과음

- 드리프트 효과음

- 기어에 따른 엔진 효과음

 

 

게임 규칙은 간단하다, 세 바퀴를 돌면 게임이 끝난다.

임의로 맵 두 곳에 안 보이는 체크포인트를 두어 시작 지점 - 체크포인트 1 - 체크포인트 2 - 종료지점을 순서대로 통과해야만 LAP의 횟수가 오르도록 했다.

 

4. 일시정지 화면

P키를 누르면 게임을 일시 정지할 수 있다.

Resume을 누르면 게임 재개,

Main을 누르면 메인화면으로,

Restart를 누르면 게임을 처음부터 다시 시작,

Quit를 누르면 창이 닫으며 게임을 종료한다.

 

5. 종료 화면

세 바퀴를 완주하면 Best LAP과 게임시간을 출력한다.

 

학교 동기 두 명을 포함해서 제작을 했다.

C++강의 -> 언리얼 엔진 입문 강의 -> 게임 기획 -> 관련 영상 시청 -> 역할 분담 -> 제작 순으로 진행하였다.

중간에 중간고사와 기말고사가 있어 원활하게 이루어지지는 않았다.

처음에는 C++으로만 제작을 하려 했지만 정해진 시간 내에 완성을 하려면 블루프린트로 해야 될 것 같아 블루프린트로 진행을 하였다.

유데미에서 구매한 강의를 기반으로 제작을 하였고, 중간에 막히는 부분이 있으면 구글 또는 유튜브에서 검색을 했다.

게임이라고 하기엔 부족한 부분이 많다고 생각한다.

블루프린트 부분을 보면 지저분하게 짠 흔적도 있고, 기본으로 주어진 블루프린트에서 지워도 되는 부분도 있다.

파일들과 위젯들도 깔끔하게 정리하지 못했다.

아직 해결 못한 문제들도 있으며 기획과 다르게 넘겨버린 부분도 존재한다.

 

차후에는 C++을 기반으로 하여 게임을 제작해볼 예정이다.