top of page

PALWORLD

​모작 게임

PALWORLD

​개발명세서 (노션링크)

​영상

개발 언어

​블루프린트

​팀원 인원

​4명

​담당 파트

UI / 인벤토리

​개발 기간

2024.12.09 ~ 2025.01.03 (1개월)

​장르

오픈 월드, TPS, 샌드박스

​개발 엔진

​언리얼 엔진5

​플레이 영상

개발 도구

image11.png

언리얼 엔진 5.4 

C++ 기반 로직과 블루프린트의 연동을 통해 다양한 게임 시스템을 개발

image13.png

Rider

언리얼 C++ 코드를 효율적으로 관리하고 디버깅할 수 있는 개발 환경으로 사용

image14.png

GitHub

팀 프로젝트의 형상 관리를 위해 사용

image16.png

SourceTree

실시간 상태 확인과 버전 히스토리 추적에 유용하게 활용

​프로젝트 진행 과정

개발 초기에 기능별 목표를 정리하고 팀과 함께 공유하면서
주차 단위로 체계적으로 프로젝트를 완성해 나갔습니다.

인벤토리 (2주)

[ 구현 목표 ]

아이템 테이블 및 구조체 설계

실시간 감지 기능 구현

인벤토리 슬롯 기능 구현

상호작용 담당 컴포넌트 개발

인벤토리 타입 관리용 매니저 구현

위젯 구조도 설정 (1주)

[ 구현 목표 ]

실시간 UI 위젯 설정

인벤토리 위젯 구현

인벤토리 슬롯 기능 구현

팰 인벤토리 위젯 구현

HUD 위젯 구현

오브젝트 상호작용 (1주)

[ 구현 목표 ]

 

팰 상자 위젯 구현

나무작업대 위젯 구현

플레이어 스탯, 팰 스탯 연동

팰 인벤토리 위젯 구현

사운드 추가

주요 기능 

 ​

인벤토리 활용

 

플레이어가 소지한 아이템을 유형별로 인벤토리 관련 핵심 기능을 (아이템 추가/제거, 슬롯 교환, 실시간 상호작용 감지 등) 할 수 있도록 설계하였습니다.

플레이어 상호작용

 

게임 속에서 플레이어는 다양한 오브젝트(아이템, 상자, 제작대 등)와 상호작용할 수 있습니다.
이때 각각의 오브젝트마다 방식이 다르면 복잡해지기 때문에,

모든 상호작용을 하나의 공통된 틀로 묶어 처리할 수 있도록 만들었습니다.

​​

전체 UI

게임 속 UI에서는 다양한 종류의 오브젝트 인벤토리 변화에 따라 UI를 실시간으로 반영하기 위해 슬롯(아이템) 정보를 동적으로 생성하는 시스템을 설계했습니다.

회고 

 ​

위젯 재사용성에 대한 많은 고민을 하였는데 공통부분을 상속 구조로 정리하여 덕분에 유지 보수가 쉬웠고, 추가 UI 기능 확장이 수월하였으나, 위젯 간 참조가 많아질수록 의존성이 높아지는 구조 발생할 수 있다는 점에서 위젯을 관리하는 매니저를 만드는 방법을 고려하게 되었습니다. 복잡한 바인딩 구조에서 디스패처 흐름이 직관적이지 않은 설계에 아쉬움이 있었고 다음 기회에는 조금 더 시각화된 구조로 설계해야겠다는 생각을 하였습니다.

bottom of page