-
[Unreal] 언리얼 엔진을 사용한 간단한 TPS 게임 개발 리뷰2024년 01월 03일
- 유니얼
-
작성자
-
2024.01.03.:22
728x90이번 블로그에는 처음으로 언리얼 엔진을 통해서 간단한 TPS(Third-Person Shooter) 게임을 만든 과정과 이에 대한 후기를 공유하고자 합니다. 그 동안에 유니티 엔진으로만 게임을 개발하다가 언리얼 엔진에도 도전해보고자 간단한 TPS 게임을 만들어 보았습니다.
GitHub Link
https://github.com/SeoBYP/Unreal_Engine_5_TPS_Game
1, 게임 개발의 첫걸음
처음에는 언리얼 엔진을 설치하고 나서 어떤 게임을 만드는 게 좀 더 쉽고 간단하면서도 추후에도 도움이 될 수 있을 지를 고민했습니다. 다양한 강의 자료와 강의와 자료를 보고 TPS 게임이 그나마 무난해 보여서 TPS 게임을 제작하기로 했습니다. 물론 기존에는 Unity 엔진만 사용하다가 언리얼 엔진을 사용하니 모든 것이 생소하고 어려웠지만, 강의와 학습 자료를 통해 점차적으로 실력을 키워갈 수 있었습니다.
2, 게임 개발 구현
캐릭터와 애니메이션:
게임 제작에서 캐릭터와 애니메이션은 핵심이었습니다. 특히 조준 방향을 고정시키면서 자연스러운 움직임을 만들어내는 것은 큰 도전이었습니다. Animation Montage와 Blendspaece등을 활용하면서 보다 현실적인 캐릭터 애니메이션을 만들고자 하였습니다. 특히, 유니티 엔진과는 다르게, 애니메이션 블루프린트를 만들고 다양한 캐릭터 동작을 구현하는 과정은 정말 흥미로웠습니다.
다양한 무기와 무기 시스템
다양한 무기와 무기 시스템은 TPS 게임의 핵심이며, "포트나이트"와 같은 게임을 참고하여 다양한 무기 유형을 구현하는 방법을 배웠습니다. 이 과정에서 무기의 개발 및 조정에는 다음과 같은 중요한 측면이 포함되었습니다:
- 무기 유형 구현: 권총, SMG, 기관단총 등 다양한 무기 종류를 구현하여 플레이어에게 다양한 전투 전략을 제공했습니다. 각 무기는 고유한 특징과 데미지 값을 가지며, 플레이어의 선택에 따라 게임 플레이가 다르게 진행되도록 했습니다.
- 사격 메카닉 조절: 사격 메카닉은 게임의 핵심이며, 플레이어가 무기를 다루는 방식에 직접적으로 영향을 미칩니다. 정확한 조준, 사격 감도, 반동 등을 조절하여 플레이어의 조작 경험을 최적화하였습니다.
- 무기 전환 애니메이션: 플레이어가 다른 무기로 전환하는 과정은 게임의 순발력과 전투 흐름에 큰 영향을 미칩니다. 무기 전환 애니메이션을 만들어내어 부드러운 전환과 시각적 매력을 부여했습니다.
- 발사 및 재장전 애니메이션: 게임의 사격 및 재장전 애니메이션은 플레이어와 상호작용하는 핵심 부분입니다. 각 무기의 발사와 재장전 애니메이션을 정교하게 구현하여 게임의 전투 체감을 향상시켰습니다
몬스터 AI
TPS 게임을 개발하는 과정에서 몬스터 AI를 개발하기 위해 Behavior Tree를 활용하였습니다.
- Behavior Tree의 역할: Behavior Tree는 몬스터의 의사 결정과 행동 패턴을 결정하는 논리적인 구조입니다. 이를 통해 어떤 상황에서 어떤 행동을 취할지를 명확하게 정의할 수 있습니다. 몬스터는 Behavior Tree를 통해 플레이어와의 상호작용, 이동, 공격 등 다양한 행동을 수행하도록 했씁니다.
- Task와 Decorator: Behavior Tree를 구성하는 주요 요소로는 "Task"와 "Decorator"가 있습니다. Task는 몬스터가 수행할 특정 행동을 정의하고, Decorator는 특정 조건을 검사하여 행동의 실행 여부를 결정합니다. 이러한 Task 와Decorator의 조합을 통해 몬스터의 행동 패턴을 다양하게 조절하여 몬스터 AI를 구현했습니다.
- 블랙보드와 데이터 키: Behavior Tree를 통해 몬스터는 게임 내 정보를 기억하고 활용할 수 있습니다. 블랙보드를 사용하여 변수와 데이터를 저장하고, 데이터 키를 통해 이를 검색하거나 수정할 수 있습니다. 몬스터 AI의 결정은 블랙보드에 저장된 정보를 기반으로 이루어집니다. 그래서, 몬스터가 플레이어의 위치나 상태를 확인하여 플레이어가 죽었을 경우 더이상 움직이지 않도록 설정하였습니다.
인벤토리 및 아이템 시스템
데이터 테이블을 사용하여 아이템의 등급, 아이콘, 이름, 설명 및 효과 등을 설정 및 관히하고, 아이템의 등급에 따라서 형광 효과와 시각적 효과를 추가하여 게임 플레이를 더욱 흥미롭게 만들었습니다.
- 데이터 테이블: 데이터 테이블은 게임 내 정보를 중앙 집중 관리하는 데 사용되는 효과적인 도구입니다. 이를 통해 아이템의 등급, 이름, 설명, 아이콘, 효과 등과 같은 정보를 손쉽게 수정하고 관리할 수 있도록 했습니다.
- 아이템 등급 시스템: 각 아이템의 등급에 따라 높은 등급의 아이템은 몬스터에게 높은 데미지를 입히는 방식으로 구현하였습니다.
- 아이템 효과와 시각적 효과: 아이템의 각 등급별로 UI와 아이템 FX 효과의 색상을 다르게 주어 아이템의 시각적인 효과를 더했습니다.
마무리
처음에는 언리얼 엔진을 다루는 것이 새롭고 어려웠지만, 열정과 학습을 통해 점점 익숙해져갔습니다. TPS 게임을 개발하는 과정에서 캐릭터와 애니메이션, 다양한 무기와 무기 시스템, 몬스터 AI, 그리고 인벤토리 및 아이템 시스템을 구현하는 데 많은 시간과 노력을 투자했습니다.
반응형다음글이전글이전 글이 없습니다.댓글