
📌 프로젝트 개요
📺 게임 영상
https://youtu.be/FH7pDIfE6Uo
🔖 목차
🗓️ 프로젝트 수행 절차
인벤토리 (2주)
| 구현 목표 |
| 아이템 테이블 , 구조체 설계 |
| 실시간 감지 기능 구현 |
| 인벤토리 슬롯 기능 설계 및 구현 |
| ItemDataComponent : 상호작용 할 아이템들이 포함하고 있는 컴포넌트 구현 |
| InventoryManager : 인벤토리 타입 관리 인벤토리 매니저 구현 |
위젯 구조도 설정 (1주)
| 구현 목표 |
| 실시간 UI 위젯 설정 |
| 인벤토리 위젯 구현 |
| 팰 인벤토리 위젯 구현 |
| HUD 위젯 구현 |
기타 UI , 오브젝트 상호작용 (1주)
| 구현 목표 |
| 팰 상자 위젯 구현 |
| 나무작업대 위젯 구현 |
| 플레이어 스탯 , 팰 스탯 연동 |
| 사운드 추가 |
➡️ 전체 레벨 흐름 요약
StartLevel
- 시작 UI(BGM 포함) 출력
- 게임 시작 버튼 클릭 시 →
CustomizationLevel로 이동
CustomizationLevel
- 커스터마이징 위젯 출력
- 사용자 커스터마이징 완료 후 → 본 게임(
MainLevel)로 진입
MainLevel
- 본 게임 진행 레벨
- 커스터마이징된 캐릭터를 불러와 플레이 시작
- 인벤토리, 팰 관리, 전투, 사망 UI, 스탯 UI 등 핵심 시스템 동작
- HUD 및 각종 UI 연동을 통한 실시간 플레이 상태 표현
🗂️ 위젯 구조도
.jpg)
🗂️ 주요 기능 구조도
.jpg)
📝 기능 구현
상호작용 오브젝트 공통 처리 인터페이스 : IInteractInterface
기능 요약
다양한 종류의 상호작용 대상을 공통된 함수 호출 구조를 유지하면서도 각 객체별로 다른 동작을 정의하기 위해 설계하였습니다.
주요 기능 및 동작 흐름
| 함수명 |
기능 요약 |
InteractWith() |
플레이어와 오브젝트 대상이 상호작용을 시작할 때 호출 |
InteractCancel() |
상호작용 취소 시 호출 |
LookAt() |
플레이어가 해당 오브젝트를 바라볼 때 호출 |
SetVisibilityWidget() |
상호작용 위젯의 표시 여부를 결정할 때 호출 |