Contents
접기
728x90
자동 전투 + 성장 시스템을 갖춘 3D 방치형 RPG를 만들기 위한 기본 구조를 정리하였다.
폴더 구조
Assets
┣ Scripts
┃ ┣ Core // 매니저 (GameManager, UIManager)
┃ ┣ Character // 플레이어, 몬스터 + FSM
┃ ┣ StateMachine // IState, StateMachine
┃ ┣ UI // UI 관련
┃ ┣ Data // ScriptableObject (아이템, 몬스터, 스테이지)
┃ ┣ Inventory // 인벤토리 시스템
┣ Prefabs
┃ ┣ Characters // Player, Monster 프리팹
┃ ┣ UI // UI 프리팹
┣ Scenes
┃ ┣ MainScene.unity
┣ Resources
┃ ┣ ScriptableObjects (ItemSO, MonsterSO, StageSO)
주요 시스템
- GameManager : 전체 흐름 관리, 몬스터 스폰, 스테이지 진행
- UIManager : 메인메뉴, 스탯창, 인벤토리 전환
- Player : FSM 기반 이동/공격, 스탯/레벨업, 장비 보정
- Monster : FSM (Idle → Chase → Attack → Dead), 골드/경험치 드랍
- Item (SO) : 무기/방어구/액세서리, 장비 시 스탯 보정
- Inventory : 아이템 리스트, 장착/해제 기능
- Stage : 스테이지 번호, 몬스터 웨이브 관리
진행 순서
- Core : GameManager, UIManager 싱글톤
- FSM : Player/Monster 상태 (Idle, Move, Attack)
- UI : 메뉴, 스탯창, 인벤토리
- Inventory/Item : ScriptableObject 기반 아이템 + 장비
- 전투/레벨업 : 경험치/골드 획득 → 성장
- Stage 시스템 : 스테이지 이동 & 클리어 관리
728x90
'GameDevelop > Unity기초쌓기' 카테고리의 다른 글
[Unity] SerializeField + 프로퍼티 패턴 (0) | 2025.06.08 |
---|---|
Unity FSM 구조 – 방치형 RPG에 맞게 단순화 (0) | 2025.06.08 |
Unity 최적화 – Update 가볍게, 캐싱하기 (0) | 2025.06.04 |
OnDrawGizmos를 이용해 범위 시각화하기 (0) | 2025.05.29 |
Unity GetComponent<Renderer>() 간단 정리 (0) | 2025.05.28 |